Delphi可視化創建數據表格,手動創建數據表,其實在SQL管理器中也可以實現數據庫的各類操作,包括創建數據表,本例只是再次練手,熟練掌握Delphi與數據庫的操作,特寫了一個可視化的數據庫手工建表程序,僅供參考,以下是代碼:
01
unit Unit1;
02
interface
03
uses
04
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
05
Dialogs, DBTables, DB, StdCtrls, DBCtrls, Grids, DBGrids;
06
type
07
TForm1 = class(TForm)
08
Table1: TTable;
09
Button1: TButton;
10
DBGrid1: TDBGrid;
11
Button2: TButton;
12
DataSource1: TDataSource;
13
procedure Button1Click(Sender: TObject);
14
procedure Button2Click(Sender: TObject);
15
private
16
{ Private declarations }
17
public
18
{ Public declarations }
19
end;
20
var
21
Form1: TForm1;
22
implementation
23
{$R *.dfm}
24
procedure TForm1.Button1Click(Sender: TObject);
25
var
26
AliasNames:TStringList; //字符串列表變量
27
answer:Integer;
28
begin
29
AliasNames:=TStringlist.Create;
30
//數據庫別名的創建和配置
31
Session.GetAliasNames(AliasNames); //取得別名列表
32
if (AliasNames.IndexOf('朋友信息')>-1) then
33
Begin
34
ShowMessage('"朋友信息"已經存在,請退出');
35
Button2.Enabled:=True;
36
end;
37
if (AliasNames.IndexOf('朋友信息')=-1) then //判斷別名是否存在
38
begin
39
answer:=Application.MessageBox('"朋友信息"不存在,要創建嗎?','BDE提示',mb_OKCancel);
40
if answer=IDCANCEL then
41
begin
42
AliasNames.Free;
43
Exit;
44
end;
45
Session.AddStandardAlias('朋友信息','e:\','Paradox'); //
46
Session.SaveConfigFile; //BDE配置文件存盤
47
end;
48
AliasNames.Clear; //清除別名稱列表
49
//數據表格的創建
50
Session.GetTableNames('朋友信息','',False,False,AliasNames);//獲取數據庫下的表格信息
51
if (AliasNames.IndexOf('mateInfo')=-1) then //判斷表格是否存在
52
begin
53
answer:=Application.MessageBox('"朋友信息"中不存在表格mateInfo,現在創建嗎?','表格信息窗口',mb_OKCancel);
54
if answer=IDCANCEL then
55
begin
56
AliasNames.Free;
57
Exit;
58
end;
59
with table1 do
60
begin
61
Active:=false;
62
DatabaseName:='朋友信息'; //數據庫別名
63
TableName:='mateInfo'; //表格名
64
TableType:=ttParadox; //數據庫類型
65
with FIEldDefs do
66
begin //增加字段
67
Clear;
68
Add('姓名',ftString,10,False); //姓名
69
Add('年齡',ftString,10,False); //年齡
70
Add('省份',ftString,8,False); //省份
71
Add('收入',ftFloat,0,False); //收入
72
end;
73
with IndexDefs do
74
begin //增加索引
75
Clear; //姓名字段建立主索引
76
Add('matename','姓名',[ixPrimary,ixUnique]);
77
end;
78
CreateTable; //創建表格
79
end;
80
end ;
81
AliasNames.free; //釋放變量AliasNames
82
Button2.Enabled:=True;
83
end;
84
procedure TForm1.Button2Click(Sender: TObject);
85
begin
86
Table1.DatabaseName:='朋友信息';
87
Table1.TableName:='mateinfo';
88
Table1.Active:=true;
89
end;
90
end.
以下是可視化窗口,編譯後的效果圖:
