可以动态的创建数据库别名,配置数据库路径,动态的创建表,
或者Copy表到目录下,不就行了。下面供参考:
procedure TForm1.Button1Click(Sender: TObject);
var
ap:TStringList; {字符串列表变量}
DataDir : String;
begin
DataDir := 'C:\';
ap:=TStringlist.Create;
Session.GetAliasNames(ap); {取得别名列表}
if (ap.IndexOf('YourDataBase') = -1) then {判断别名是否存在}
begin
Session.AddStandardAlias('YourDataBase',DataDir,'Paradox');
Session.SaveConfigFile; {BDE配置文件存盘}
end ;
ap.Clear; {取得别名YourDataBase中的所有表格名称列表}
Session.GetTableNames('YourDataBase','',False,False,ap);
if (ap.IndexOf('YourTable')=-1) then {判断表格是否存在}
begin
with table1 do
begin
Active:=false;
DatabaseName:='YourDataBase'; {数据库别名}
TableName := 'YourTable';{表格名}
TableType:=ttParadox;{数据库类型}
with FieldDefs do
begin{增加字段}
Clear;
Add('AAA',ftString,50,False);
Add('DDD',ftMemo,200,False);
end;
with IndexDefs do
begin {增加索引}
Clear; {按AAA字段建立主索引}
Add('AAASY','AAA',[ixPrimary,ixUnique]);
end;
CreateTable; {创建表格}
end;
end;
ap.free;{释放变量ap}
end;
或者Copy表到目录下,不就行了。下面供参考:
procedure TForm1.Button1Click(Sender: TObject);
var
ap:TStringList; {字符串列表变量}
DataDir : String;
begin
DataDir := 'C:\';
ap:=TStringlist.Create;
Session.GetAliasNames(ap); {取得别名列表}
if (ap.IndexOf('YourDataBase') = -1) then {判断别名是否存在}
begin
Session.AddStandardAlias('YourDataBase',DataDir,'Paradox');
Session.SaveConfigFile; {BDE配置文件存盘}
end ;
ap.Clear; {取得别名YourDataBase中的所有表格名称列表}
Session.GetTableNames('YourDataBase','',False,False,ap);
if (ap.IndexOf('YourTable')=-1) then {判断表格是否存在}
begin
with table1 do
begin
Active:=false;
DatabaseName:='YourDataBase'; {数据库别名}
TableName := 'YourTable';{表格名}
TableType:=ttParadox;{数据库类型}
with FieldDefs do
begin{增加字段}
Clear;
Add('AAA',ftString,50,False);
Add('DDD',ftMemo,200,False);
end;
with IndexDefs do
begin {增加索引}
Clear; {按AAA字段建立主索引}
Add('AAASY','AAA',[ixPrimary,ixUnique]);
end;
CreateTable; {创建表格}
end;
end;
ap.free;{释放变量ap}
end;
解决方案 »
- delphi检索出现问题?
- 下面这小段删除数组中指定的一个元素的代码错在哪里?
- 怎样把exe文件放到数据库中,从数据库中读取文件并保存为exe文件
- 在D7中,如何设置,让弹出的窗口,只有用户点击关闭后才没有?
- 年纪不小了,还在考虑生计问题,烦,放分之三
- 问一个窗体关闭的问题,分数不多了:(
- 如何能取得桌面快捷方式的目标属性!
- 关于数据库的存储问题!(在线等候)
- Delphi里如何将datetime变量转换成如下格式字符串:“20020724163009”
- 再线关注!一个简单的问题!关于richtext
- 能否介绍几种DELPHI实现同步的方法,看回答的多少给分,谢谢!
- 能否通过数字n直接来使当前记录指向表中的第n条记录?
别名是为数据库提供的一个说明,数据库路径改变后其别名的名称无须改变,改变的只是相应的设置属性。 譬如:使用dBase数据库别名,只需要修该数据库别名所包含的路径项目。又若为连接SQL服务器变换,只需要修改客户机的数据库别名设置,登陆连接到新的SQL