⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fdynamicsqldemoclientmain.pas

📁 就是这本书的随书代码。包括《实战Delphi 5.x-分布式多层应用系统篇》
💻 PAS
字号:
unit fDynamicSQLDemoClientMain;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, ExtCtrls, Db, DBClient, MConnect, SConnect, ComCtrls, Grids,
  DBGrids, DBCtrls;

type
  TForm2 = class(TForm)
    PageControl1: TPageControl;
    tstData: TTabSheet;
    tstSQL: TTabSheet;
    ClientDataSet1: TClientDataSet;
    Panel1: TPanel;
    btnConnect: TButton;
    Panel2: TPanel;
    Label1: TLabel;
    edtDatabase: TEdit;
    GroupBox1: TGroupBox;
    lbTables: TListBox;
    Splitter1: TSplitter;
    btnRun: TButton;
    DataSource1: TDataSource;
    DBNavigator1: TDBNavigator;
    DBGrid1: TDBGrid;
    mmSQL: TMemo;
    SocketConnection1: TSocketConnection;
    DBNavigator2: TDBNavigator;
    DBGrid2: TDBGrid;
    procedure btnConnectClick(Sender: TObject);
    procedure FormDeactivate(Sender: TObject);
    procedure btnRunClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation

{$R *.DFM}

procedure TForm2.btnConnectClick(Sender: TObject);
var
  vtblList : Variant;
  iCount : Integer;
begin
  SocketConnection1.Connected := True;
  SocketConnection1.AppServer.GetAllTables(vtblList);
  if (VarIsArray(vtblList)) then
  begin
    for iCount := VarArrayLowBound(vtblList, 1) to VarArrayHighBound(vtblList, 1)  do
    begin
      lbTables.Items.Add(vtblList[iCount]);
    end;
  end;
end;

procedure TForm2.FormDeactivate(Sender: TObject);
begin
  SocketConnection1.Connected := False;
end;

procedure TForm2.btnRunClick(Sender: TObject);
const
  sSQL : string = 'select * from ';
var
  sSelect : string;
begin
  if (PageControl1.ActivePageIndex = 0) then
  begin
    sSelect := sSQL + lbTables.Items[lbTables.ItemIndex];
    ClientDataSet1.Close;
    ClientDataSet1.CommandText := sSelect;
    ClientDataSet1.Open;
  end
  else
  begin
    try
      sSelect := mmSQL.Text;
      ClientDataSet1.Close;
      ClientDataSet1.CommandText := sSelect;
      ClientDataSet1.Open;
    except
      on exception do
      begin
        ShowMessage('ぃタ絋

⌨️ 快捷键说明

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