📄 extract2.pas
字号:
unit Extract2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, StdCtrls, Grids, DBGrids, Buttons, ExtCtrls;
type
TfrmExtract2 = class(TForm)
ADOConnection1: TADOConnection;
ADOTable1: TADOTable;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Button1: TButton;
ADOTable1ID: TWideStringField;
ADOTable1DSDesigner: TWideStringField;
ADOTable1DSDesigner2: TIntegerField;
ADOTable1DSDesigner3: TIntegerField;
ADOQuery1: TADOQuery;
DataSource2: TDataSource;
DBGrid2: TDBGrid;
Label1: TLabel;
Timer1: TTimer;
Timer2: TTimer;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
Label8: TLabel;
procedure Button2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure Timer2Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmExtract2: TfrmExtract2;
implementation
{$R *.dfm}
procedure TfrmExtract2.Button2Click(Sender: TObject);
begin
close;
end;
procedure TfrmExtract2.FormCreate(Sender: TObject);
var
ConnStr,DBPath:String; //保存连接字符串和数据库路径
SGroupId :string;
// IoptionCount,IExtractCount :Integer;
begin
{ExtractFilePath函数从一个完整的文件名中分离出路径,以'\'结束,
Application.ExeName得到程序执行文件本身的文件名,
这里要求数据库文件(UserInfo.mdb)必须放在程序同一个目录,
否则就连接不上了,呵呵!}
try
DBPath:=ExtractFilePath(Application.ExeName)+'Data\ExtractDB.mdb';
ConnStr:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+
DBPath+';Persist Security Info=False';
//ConnStr:='Provider=MSDASQL.1;Password="";Persist Security Info=True;Data Source= '+
// DBPath ;
ADOConnection1.Close; //要改变它的属性前要关闭连接!
ADOConnection1.ConnectionString:=ConnStr; //指定连接串
ADOconnection1.LoginPrompt:=False; //不显示默认的登录对话框
ADOConnection1.Open //打开连接
except
on E:Exception do
begin
ShowMessage('出错!'+e.Message); //显示出错信息
frmExtract2.Close; //退出程序算了,数据库都连不上还有什么用!^_^
end;
end;
ADOTable1.Close;
ADOTable1.Connection:=frmExtract2.ADOConnection1;
ADOTable1.TableName:='ExpertGroup'; //数据表名称!
ADOTable1.Open; //打开数据库表
//浏览ExpertGroup表
ADOTable1.First;
while not ADOTable1.Eof do
begin
SGroupId :=ADOTable1.FieldValues['组ID'];
with ADOQuery1 do begin
Close;
SQL.Clear;
SQL.Add('select count(*) from Expert where 组ID like :GroupID');
Parameters.ParamByName('GroupID').Value := SGroupId;
Prepared :=true;
Open; //select语句需用Open方法执行
end;
//对当前记录进行操作
ADOTable1.Next;
end;
ADOTable1.First;
end;
procedure TfrmExtract2.BitBtn1Click(Sender: TObject);
begin
timer1.Enabled:=True;
timer2.Enabled:=True;
end;
procedure TfrmExtract2.BitBtn2Click(Sender: TObject);
begin
timer1.Enabled:=false;
timer2.Enabled:=false;
end;
procedure TfrmExtract2.Timer1Timer(Sender: TObject);
begin
Randomize;
Label1.Caption:=IntToStr(Random(10));
Application.ProcessMessages;
//处理Windows消息,属简单多线程
end;
procedure TfrmExtract2.BitBtn3Click(Sender: TObject);
begin
close;
end;
procedure TfrmExtract2.Timer2Timer(Sender: TObject);
begin
Label8.Caption:=FormatDateTime('yyyy"年"m"月"d"日"dddd',date)+
' '+TimeToStr(time);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -