?? unit5.pas
字號(hào):
unit Unit5;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, DBGrids, DB, ADODB;
type
TForm5 = class(TForm)
ADODataSet1: TADODataSet;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Button1: TButton;
Label3: TLabel;
Button2: TButton;
Button3: TButton;
ADOCommand1: TADOCommand;
ADODataSet2: TADODataSet;
ADODataSet3: TADODataSet;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form5: TForm5;
implementation
{$R *.dfm}
uses unit1,unit4;
procedure TForm5.FormCreate(Sender: TObject);
begin
xinleibie_show:=True;
Adodataset1.Active:=False;
Adodataset1.CommandText:='select id as 類別標(biāo)示,leibie as 類別名稱 from leibie';
Adodataset1.Active:=True;
end;
procedure TForm5.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
xinleibie_show:=False;
end;
procedure TForm5.Button2Click(Sender: TObject);
begin
close;
end;
procedure TForm5.Button1Click(Sender: TObject);
var
i:integer;
begin
if (Trim(edit1.Text)<>'') and (edit2.Text<>'') then
begin
//新類別寫入數(shù)據(jù)庫,同時(shí)生成相應(yīng)的類別表,表名就是類別名
//先檢測有沒有相同的ID
Adodataset2.Active:=False;
Adodataset2.CommandText:='select * from leibie where id ='''+Trim(edit2.Text)+'''';
Adodataset2.Active:=True;
if Adodataset2.RecordCount=0 then
begin
//不存在重名,則可以寫入數(shù)據(jù)庫
Adocommand1.CommandText:='insert into leibie values ('''+trim(edit2.Text)+''','''+Trim(edit1.Text)+''')';
//showmessage(Adocommand1.CommandText);
Adocommand1.Execute;
messagedlg('操作成功!',mtinformation,[mbok],0);
//生成相應(yīng)類別子表
Adocommand1.CommandText:='Create table '+Trim(edit2.Text)+'(id varchar(10),mincheng varchar(50))';
Adocommand1.Execute;
//還原文本框
edit1.Text:='';
edit2.Text:='T_';
//刷新下面的dbgrid
adodataset1.Active:=False;
Adodataset1.Active:=True;
//更新Form4的下拉列表框
Adodataset3.Active:=False;
Adodataset3.CommandText:='select * from leibie';
Adodataset3.Active:=True;
//寫入數(shù)組
for i:=0 to 99 do
form1.combobox[i]:='';
for i:=0 to Adodataset3.RecordCount-1 do
begin
Form1.combobox[i]:=Adodataset3.Fields[1].AsString;
Adodataset3.Next;
end;
form1.stringlength:=i;
end
else
messagedlg('該編號(hào)已存在!',mtwarning,[mbok],0);
end
else
messagedlg('相關(guān)內(nèi)容不能為空!',mtwarning,[mbok],0);
end;
procedure TForm5.Button3Click(Sender: TObject);
var
i:integer;
begin
//刪除dbgird中當(dāng)前的類別
if (messagedlg('你確定要?jiǎng)h除該類別嗎?',mtwarning,[mbYes,mbNO],0)=mrYes ) then
begin
//刪除相應(yīng)的表
Adocommand1.CommandText:='drop table '+dbgrid1.Fields[0].AsString;
Adocommand1.Execute;
Adocommand1.CommandText:='delete * from leibie where id='''+dbgrid1.Fields[0].AsString+'''';
Adocommand1.Execute;
Adodataset1.Active:=False;
Adodataset1.Active:=True;
//更新Form4的下拉列表框
Adodataset3.Active:=False;
Adodataset3.CommandText:='select * from leibie';
Adodataset3.Active:=True;
//寫入數(shù)組
for i:=0 to 99 do
form1.combobox[i]:='';
for i:=0 to Adodataset3.RecordCount-1 do
begin
Form1.combobox[i]:=Adodataset3.Fields[1].AsString;
Adodataset3.Next;
end;
form1.stringlength:=i;
end;
end;
end.
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -