📄 gq_uselectd_t.pas
字号:
unit GQ_USelectD_T;
{
代码单元名称:通用综合查询工具数据库表选择窗口
从属软件:大连资金清算中心打码机管理信息系统
开发单位:大连理工大学计算机技术研究所软件工程研究室
作者:张玉洁 ,袁源
时间:2001,1,30
}
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons, ExtCtrls, Db, DBTables, ComCtrls, IniFiles, jpeg;
type
TGQ_FSelectD_T = class(TForm)
CancelBtn: TBitBtn;
OkBtn: TBitBtn;
Image1: TImage;
Label2: TLabel;
GroupBox1: TGroupBox;
Label1: TLabel;
ListBox2: TListBox;
GroupBox2: TGroupBox;
Label3: TLabel;
ListBox1: TListBox;
Button1: TButton;
procedure CancelBtnClick(Sender: TObject);
procedure OkBtnClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ListBox2Click(Sender: TObject);
procedure ListBox1Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
ChooseTable: Boolean; //是否成功的选择了一个表
ServerName: string;
DataBaseName: string;
TableName: string;
UserName: string;
UserPSW: string;
end;
implementation
{$R *.DFM}
uses GQ_UQueryMain, GQ_DataModule, main, PublicUnit;
procedure TGQ_FSelectD_T.FormShow(Sender: TObject);
var
i, TableCount: integer;
ti: TInifile;
begin
Screen.Cursor := crHourGlass;
ChooseTable := False;
ServerName := FrmMain.ServerName;
DataBaseName := FrmMain.DbName;
ti := TInifile.Create(ExtractFilePath(Application.ExeName) + '\System.ini');
TableCount := ti.ReadInteger('System', 'TableCount', 0);
if TableCount <> 0 then
begin
for i := 1 to TableCount do
ListBox2.Items.Add(ti.ReadString('TableList', 'Table' + IntToStr(i), ''));
ti.Free;
end;
with GQ_FDataModule do
begin
ADOConnection1.Close;
ADOConnection1.ConnectionString :=
'Provider=SQLOLEDB.1;Persist Security Info=True;Password=' + FrmMain.DBPass
+
';User ID=' + FrmMain.DBUser + ';Initial Catalog=' + PublicUnit.DbName +
';Data Source=' + PublicUnit.ServerName;
ADOConnection1.Open;
with ADOQuery1 do
begin
Close;
Sql.Clear;
Sql.Add('Select *');
Sql.Add('From ForSaveTable');
Open;
while not Eof do
begin
ListBox1.Items.Add(FieldByName('SaveCView').AsString);
Next;
end;
Close;
end;
ADOConnection1.Close;
end;
ChooseTable := True;
Screen.Cursor := crDefault;
end;
{---------------------------------------------------------------------------}
procedure TGQ_FSelectD_T.OkBtnClick(Sender: TObject);
begin
if ListBox2.ItemIndex <> -1 then
TableName := GetTableEName(ListBox2.Items[ListBox2.ItemIndex])
else if ListBox1.ItemIndex <> -1 then
TableName := GetTableEName(ListBox1.Items[ListBox1.ItemIndex])
else
ChooseTable := False;
Close;
end;
procedure TGQ_FSelectD_T.CancelBtnClick(Sender: TObject);
begin
ChooseTable := False;
Close;
end;
procedure TGQ_FSelectD_T.ListBox2Click(Sender: TObject);
begin
ListBox1.ItemIndex := -1;
end;
procedure TGQ_FSelectD_T.ListBox1Click(Sender: TObject);
begin
ListBox2.ItemIndex := -1;
end;
procedure TGQ_FSelectD_T.Button1Click(Sender: TObject);
begin
if ListBox1.ItemIndex = -1 then
Exit;
with GQ_FDataModule do
begin
ADOConnection1.Close;
ADOConnection1.ConnectionString :=
'Provider=SQLOLEDB.1;Persist Security Info=True;Password=' + FrmMain.DBPass
+
';User ID=' + FrmMain.DBUser + ';Initial Catalog=' + PublicUnit.DbName +
';Data Source=' + PublicUnit.ServerName;
ADOConnection1.Open;
with ADOQuery3 do
begin
Close;
Sql.Clear;
Sql.Add('Delete');
Sql.Add('From ForSaveTable');
Sql.Add('Where SaveCView=''' + ListBox1.Items[ListBox1.ItemIndex] + '''');
try
ExecSql;
except Exit;
end;
Close;
Sql.Clear;
Sql.Add('Drop View ' + GetTableEName(ListBox1.Items[ListBox1.ItemIndex]));
try
ExecSql;
except Exit;
end;
Close;
end;
ListBox1.Items.Delete(ListBox1.ItemIndex);
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -