小编典典

如何通过dbf查询在mdb中创建表

sql

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

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

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

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

sql =“将INERT插入[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

阅读 192

收藏
2021-04-14

共1个答案

小编典典

最后是到新创建的mdb的ADODB连接。然后执行此操作以创建表和数据。

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