📄 main.pas
字号:
unit main;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, StdCtrls, DB, DBClient, MConnect;
type
TForm1 = class(TForm)
cbbDBNames: TComboBox;
Label1: TLabel;
memSQL: TMemo;
btnSubmit: TButton;
DBGrid1: TDBGrid;
DCOMConnection1: TDCOMConnection;
ClientDataSet1: TClientDataSet;
DataSource1: TDataSource;
btnDisconnect: TButton;
Label2: TLabel;
Label3: TLabel;
edtUserName: TEdit;
edtPassword: TEdit;
procedure FormCreate(Sender: TObject);
procedure btnDisconnectClick(Sender: TObject);
procedure btnSubmitClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
//创建窗口时从服务器中获取服务器上数据库的别名,
//并添加到下拉列表框中
procedure TForm1.FormCreate(Sender: TObject);
var i:integer;
DBNames:OleVariant;
begin
with DCOMConnection1 do
begin
if not Connected then
Connected := True;
//从服务器获得数据库别名列表
DBNames := AppServer.GetServerDBNames;
//判断指定的variant变量是否是一个数组
with cbbDBNames do
begin
if VarIsArray(DBNames) then
for i := 0 to VarArrayHighBound(DBNames, 1) do
cbbDBNames.Items.Add(DBNames[i]);
//显示第一个选项
if Items.Count > 0 then
Text := Items[0];
end;
end;
end;
关闭客户端数据集
procedure TForm1.btnDisconnectClick(Sender: TObject);
begin
ClientDataSet1.Close ;
end;
//向应用服务器提交查询
procedure TForm1.btnSubmitClick(Sender: TObject);
begin
//设置应用服务器的数据库别名
if (cbbDBNames.Text = '') or (memSQL.Lines.Text = '') then exit;
with ClientDataSet1 do
begin
Close;
DCOMConnection1.AppServer.SetServerDBName(cbbDBNames.Text,
edtUserName.Text , edtPassword.Text );
//执行此操作前请确保Provider的Options属性中包含了poAllowCommandText
CommandText := memSQL.Lines.Text;
Open;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -