to ql_mf(ql_mf)兄:不是这个意思,表a是数据库中已经建好的表,只拿它作为一个模板,其中不含数据。而表b不只是一个表,而是可能有b1,b2,b3......,他们都是由程序以表a为模板在运行时创建的,我的想法是程序运行时,如果需要创建表,就复制表a,并重命名为需要的名字(b1,b2,b3......),不知可不可以实现。
select * into [tablbakename] from [tablename]
如果建一个空表,加上一个条件即可:如: “select * into [tablbakename] from [tablename] where 1=2”
各位的方法都试过了,主要是select * from a into b,都没有成功,请问哪位能提供个例程,谢谢.
是select top 0 * into b from a 不是select * from a into b。
select * into b from a
select top 0 * into b from a也试过了,也是不行。 麻烦哪位给个比较完整的例程。
dim db as database dim tab as tabledef dim tab1 as tabledef dim fieldn as field Dim file_path As String file_path = App.Path & "\" & "sample.mdb" Set db = DBEngine.Workspaces(0).OpenDatabase(file_path) set tab1= db.CreateTableDef("b") set tab=db.tabledefs("a") for i=1 to tab.fields.count set fieldn=tab.fields(i-1) tab1.fields.append fieldn next 记得给分哦!!!!!!!^^
drop table a
select top 0 * into b from a
这样就可以只是复制a表的结构了。
“select * into [tablbakename] from [tablename] where 1=2”
麻烦哪位给个比较完整的例程。
dim tab as tabledef
dim tab1 as tabledef
dim fieldn as field
Dim file_path As String
file_path = App.Path & "\" & "sample.mdb"
Set db = DBEngine.Workspaces(0).OpenDatabase(file_path)
set tab1= db.CreateTableDef("b")
set tab=db.tabledefs("a")
for i=1 to tab.fields.count
set fieldn=tab.fields(i-1)
tab1.fields.append fieldn
next
记得给分哦!!!!!!!^^
谢谢,分我会给的,但是我的本意不是用您的方法,您有没有直接在一个数据库中建立一个表的副本的方法?就像Access中选中一个表并点击“另存为”实现的功能那样。如果没有只能用您的这种方法了。
谢谢,分我会给的,但是我的本意并不是用你的方法。我想实现的是在一个数据库中建立一个表的副本,就像Access中选中一个表并点击“另存为”所实现的功能那样。如果不能实现,也只能用你的方法了。