由于ms访问2GB空间限制; 我正在考虑将数据库分成两部分。
但是我经常依赖SQL语句,例如: INSERT INTO [...] SELECT [...]
ADODB中是否有办法执行上述操作,即文件1中的INSERT INTO表, 来自文件2中的表的SELECT数据?
非常感谢你的建议。
答案 0 :(得分:3)
以下是使用VBA和ADO从另一个更新一个accdb的示例:
Sub AddDataFromAccessToAccess()
Dim cn As Object
Dim sDatabase As String
Dim sDatabase2 As String
' change these paths
sDatabase = "C:\Database1.accdb"
sDatabase2 = "C:\Database2.accdb"
Set cn = CreateObject("ADODB.Connection")
With cn
.Provider = "Microsoft.ACE.OLEDB.12.0"
.ConnectionString = "Data Source='" & sDatabase & "'"
.Open
' change table and field names here
.Execute "INSERT INTO Table1 ([Field1]) SELECT [Field2] FROM [MS Access;DATABASE=" & sDatabase2 & ";].[Table2]"
.Close
End With
End Sub
答案 1 :(得分:0)
不使用db设置为CurrentDB,而是使用OpenDatabase。
eg.
set DB = opendatabase("fkdslfjslj")