如何创建ACCESS表???(100分)

  • 主题发起人 主题发起人 honestman
  • 开始时间 开始时间
H

honestman

Unregistered / Unconfirmed
GUEST, unregistred user!
我用Delphi 5.x + ACCESS 2000进行数据库编程。
我需要:
1、不用try判断ACCESS中某个表是否存在???
2、如何创建一个与原来已经存在的表A结构一模一样的表B???
 
1:gettablenames
2:select into
 
to netkk:
  我需要的是创建结构和A一模一样的空的新表B。
 
1、
如果用的是ado,那么TADOConnection.GetTableNames得到所有表名
如果用的是bde,那么Session.GetTableNames得到所有表名
2、
如果是bde
Table2:=TTable.Create(nil);
try
Table2.DatabaseName:=Table1.DatabaseName;
Table2.FieldDefs.Assign(Table1.FieldDefs);
Table2.IndexDefs.Assign(Table1.IndexDefs);
Table2.TableName:='new_table';
Table2.CreateTable();
finally
Table2.Free();
end;
 
to Pipi.
2、如果是ado呢???
 
to Pipi.
2、如果是ado呢???
 
用bacthmove!
 
select * into a1 from country where 1>2
 
在下提供一种方法:
因为我们经常用英文名作为字段名,而在很多场合又要
用中文名显示字段(当然D是没有必要这样做的),在下
有时在建库时,就会专门做一张表,里面包含了整个系统所有
表的表名,英文字段名和中文字段名,如果采用这种方法,HONESTMAN
的问题自然得到了解决。
大家觉得这样解决怎么样,欢迎讨论。
 
select * into B from A where 1<2
 
or
create table B select * from A where 1>2
sorry (select * into B from A where 1<2)is wrong
should select * into B from A where 1>2


 
其实用ADOX也是可以的参见:
http://www.delphibbs.com/delphibbs/dispq.asp?lid=493448
说的不是建表,但建表也是一样的。
如果只是要一个表,当然用lucksc的方法一最简单,如果要建上其它的东东(索引等)
还是得用Create Table等SQL脚本,但ADOX也可以建出来。
BTW:Access中如何用SQL脚本建一个视图,其它方法也行!
 
access not support view sorry 杜宝
 
接受答案了.
 
后退
顶部