📄 unit5.pas
字号:
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 类别标示,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
//新类别写入数据库,同时生成相应的类别表,表名就是类别名
//先检测有没有相同的ID
Adodataset2.Active:=False;
Adodataset2.CommandText:='select * from leibie where id ='''+Trim(edit2.Text)+'''';
Adodataset2.Active:=True;
if Adodataset2.RecordCount=0 then
begin
//不存在重名,则可以写入数据库
Adocommand1.CommandText:='insert into leibie values ('''+trim(edit2.Text)+''','''+Trim(edit1.Text)+''')';
//showmessage(Adocommand1.CommandText);
Adocommand1.Execute;
messagedlg('操作成功!',mtinformation,[mbok],0);
//生成相应类别子表
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;
//写入数组
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('该编号已存在!',mtwarning,[mbok],0);
end
else
messagedlg('相关内容不能为空!',mtwarning,[mbok],0);
end;
procedure TForm5.Button3Click(Sender: TObject);
var
i:integer;
begin
//删除dbgird中当前的类别
if (messagedlg('你确定要删除该类别吗?',mtwarning,[mbYes,mbNO],0)=mrYes ) then
begin
//删除相应的表
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;
//写入数组
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.
//此源码由程序太平洋收集整理发布,任何人都可自由转载,但需保留本站信息
//╭⌒╮┅~ ¤ 欢迎光临程序太平洋╭⌒╮
//╭⌒╭⌒╮╭⌒╮~╭⌒╮ ︶ ,︶︶
//,︶︶︶︶,''︶~~ ,''~︶︶ ,''
//╔ ╱◥███◣═╬╬╬╬╬╬╬╬╬╗
//╬ ︱田︱田 田 ︱ ╬
//╬ http://www.5ivb.net ╬
//╬ ╭○╮● ╬
//╬ /■\/■\ ╬
//╬ <| || 有希望,就有成功! ╬
//╬ ╬
//╚╬╬╬╬╬╬╬╬╬╬╗ ╔╬╬╬╬╝
//
//说明:
//专业提供VB、.NET、Delphi、ASP、PB源码下载
//包括:程序源码,控件,商业源码,系统方案,开发工具,书籍教程,技术文档
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -