mainfrm.pas.~10~

来自「针对Lib控件」· ~10~ 代码 · 共 78 行

~10~
78
字号
unit MainFrm;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, jpeg, ExtCtrls, ComCtrls, GridsEh, DBGridEh, DB, ADODB, EhLibADO,
  StdCtrls;

type
  TMainForm = class(TForm)
    DBConn: TADOConnection;
    StudentsQuery: TADOQuery;
    DataSource1: TDataSource;
    DataGrid: TDBGridEh;
    StatusBar1: TStatusBar;
    Image1: TImage;
    Image2: TImage;
    StudentsQueryStudentID: TAutoIncField;
    StudentsQueryStudentName: TWideStringField;
    StudentsQuerySex: TBooleanField;
    StudentsQueryBirthDate: TDateTimeField;
    StudentsQuerySalary: TIntegerField;
    BtnLocal: TButton;
    BtnServer: TButton;
    BtnShowSQL: TButton;
    procedure BtnShowSQLClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure BtnLocalClick(Sender: TObject);
    procedure BtnServerClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  MainForm: TMainForm;

implementation

uses
  DBUtilsEh;

{$R *.dfm}

procedure TMainForm.BtnLocalClick(Sender: TObject);
begin
  DataGrid.STFilter.Visible := True;
  DataGrid.STFilter.Local := True;

  StudentsQuery.SQL.Text := 'SELECT * FROM Students';
  StudentsQuery.Active := True;
end;

procedure TMainForm.BtnServerClick(Sender: TObject);
begin
  DataGrid.STFilter.Visible := True;
  DataGrid.STFilter.Local := False;

  DBUtilsEh.SQLFilterMarker := '(1>0)AND';
  StudentsQuery.SQL.Text := 'SELECT * FROM Students WHERE ' + #13 + '(1>0)AND 1=1';
  StudentsQuery.Active := True;
end;

procedure TMainForm.BtnShowSQLClick(Sender: TObject);
begin
  ShowMessage(StudentsQuery.SQL.Text);
  Application.MessageBox(PChar(StudentsQuery.SQL.Text), 'SQL', MB_ICONINFORMATION);
end;

procedure TMainForm.FormCreate(Sender: TObject);
begin
  BtnLocal.Click;
end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?