paradox数据库是delphi自带的.db数据库文件,所在目录即是数据库,一个表是一个.db文件
paradox数据类型简表:
用Ttable创建paradox数据库
View Code
begin
with Table1 do
begin
Active := False;
DatabaseName := '';
TableType := ttParadox;
TableName := 'CustInfo.db';
with FieldDefs do
begin
Clear;
Add('Field1', ftInteger, 0, True);
Add('Field2', ftString, 30, False);
end;
CreateTable;
end;
end;
用TQuery,sql语句创建paradox数据库
View Code
var
TempQuery:TQuery;
DefField :String;
TableName:String;
CreateSQL:String;
begin
CreateSQL:='Create Table "%s" (%s)';
Deffield := ' Field1 Integer, Field2 CHAR(30) ';
TableName := 'C:\DB01.DB';
TempQuery := TQuery.Create(Application);
with TempQuery do
begin
try
SQL.Text:=Format(CreateSQL,[tableName,deffield]);
ExecSQL;
finally
Free;
end;
end;
end;
为paradox数据表插入数据:
View Code
begin
tbl1.DatabaseName:=ExtractFilePath(Application.ExeName)+'db';
tbl1.TableType:=ttParadox;
tbl1.TableName:='User';
tbl1.Close;
tbl1.Open;
while not tbl1.Eof do
tbl1.Delete; //删除原有的数据
for i:=1 to 20 do begin
tbl1.Insert;
tbl1.FieldByName('fID').AsInteger:=i;
tbl1.FieldByName('fName').AsString:='段改阳'+inttostr(i);
tbl1.FieldByName('ftype').AsInteger:=i;
tbl1.FieldByName('fdescrip').AsString:='fdescrip段改阳'+inttostr(i);
end;
tbl1.Post;
end;
append用法:
View Code
type
TForm1 = class(TForm)
Table1: TTable;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
with Table1 do
begin
Active := False;
DatabaseName := '';
TableType := ttParadox;
TableName := 'DOCTORINF23.db';
if not Table1.Exists then begin
with FieldDefs do begin
Clear;
with AddFieldDef do begin
Name := '姓名';
DataType := ftString;
Required := True;
Size := 10;
end;
with AddFieldDef do begin
Name := '年龄';
DataType := ftInteger;
end;//建立字段定,利用AddFieldDef方法添加一个新的TFieldDef对象
with AddFieldDef do begin
Name := '职称';
DataType := ftString;
Required := True;
Size := 10;
end;
end;
with IndexDefs do begin
Clear;
with AddIndexDef do begin
Name := 'MYINDEX';
Fields := '姓名';
Options := [ixPrimary];
end;
end; //建立索引
CreateTable;
end;
end;
Table1.Open;
Table1.Edit;
Table1.FieldByName('姓名').AsString:='刘延';
Table1.FieldByName('年龄').AsInteger:=22 ;
Table1.FieldByName('职称').AsString:='医师';
//---添加了一条记录 ,append开始添加第二条记录
Table1.Append;
Table1.Edit;
Table1.FieldByName('姓名').AsString:='杨晓';
Table1.FieldByName('年龄').AsInteger:=25 ;
Table1.FieldByName('职称').AsString:='医师';
DBGrid1.DataSource:=DataSource1;
Table1.Active :=True;
end;
end.
TForm1 = class(TForm)
Table1: TTable;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
with Table1 do
begin
Active := False;
DatabaseName := '';
TableType := ttParadox;
TableName := 'DOCTORINF23.db';
if not Table1.Exists then begin
with FieldDefs do begin
Clear;
with AddFieldDef do begin
Name := '姓名';
DataType := ftString;
Required := True;
Size := 10;
end;
with AddFieldDef do begin
Name := '年龄';
DataType := ftInteger;
end;//建立字段定,利用AddFieldDef方法添加一个新的TFieldDef对象
with AddFieldDef do begin
Name := '职称';
DataType := ftString;
Required := True;
Size := 10;
end;
end;
with IndexDefs do begin
Clear;
with AddIndexDef do begin
Name := 'MYINDEX';
Fields := '姓名';
Options := [ixPrimary];
end;
end; //建立索引
CreateTable;
end;
end;
Table1.Open;
Table1.Edit;
Table1.FieldByName('姓名').AsString:='刘延';
Table1.FieldByName('年龄').AsInteger:=22 ;
Table1.FieldByName('职称').AsString:='医师';
//---添加了一条记录 ,append开始添加第二条记录
Table1.Append;
Table1.Edit;
Table1.FieldByName('姓名').AsString:='杨晓';
Table1.FieldByName('年龄').AsInteger:=25 ;
Table1.FieldByName('职称').AsString:='医师';
DBGrid1.DataSource:=DataSource1;
Table1.Active :=True;
end;
end.