如何通过dbf查询在mdb中创建表 [英] How to create table in mdb from dbf query

查看:50
本文介绍了如何通过dbf查询在mdb中创建表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个dbf,我想使用VB6复制到新的mdb中.

I have a dbf that I would like to copy into a new mdb using VB6.

以下是我的专长,我可以轻松地创建新的mdb,但是,我认为我可以使用INTO进行Select查询,以使用数据创建新表.

The following is where I am up to, I can create the new mdb easily enough, however, I thought I could just do a Select query with an INTO to create a new table with the data.

请注意:我假设的是在运行SQL查询时创建了MSAccess表.

Please note: what I'm assuming is the MSAccess table gets created at the time the sql query gets run.

我在FROM子句中收到语法错误.我试图做的是操纵此sql查询以执行我需要的操作:

I get a syntax error in FROM clause. What I was trying to do is manipulate this sql query to do what I need it to:

sql ="INSERT INTO [Table1] SELECT * FROM [source.dbf] IN"& dbfPath

sql = "INSERT INTO [Table1] SELECT * FROM [source.dbf] IN " & dbfPath

我的示例vb:

new_mdb = root_directory & "\Temp\LnX.mdb"

Dim conCatalog As ADOX.Catalog
Set conCatalog = New ADOX.Catalog
conCatalog.Create "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & new_mdb
Set conCatalog = Nothing

Dim db As Database
Dim sql As String
Dim dbfPath As String

Set db = OpenDatabase(new_mdb, dbDriverComplete, False)
dbfPath = "'" & root_directory & "\Core'[dBase IV;]"

sql = "SELECT * FROM [LnX.dbf] IN '" & dbfPath & "' INTO [LnX]"
db.Execute sql

db.Close
Set db = Nothing

推荐答案

最终获得了与新创建的mdb的ADODB连接.然后执行此操作以创建表和数据.

Ended up with a ADODB connection to the newly created mdb. Then executed this to create the table and data.

sql = "SELECT * INTO [" & table_name & "] " & _
      "FROM [dBase IV;DATABASE=" & sourceDBpath & "].[" & table_name & "]"

这篇关于如何通过dbf查询在mdb中创建表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆