求助:关于跨数据库拷贝表
我在网上找到“/*************导出到Access********************/
insert into openrowset('Microsoft.Jet.OLEDB.4.0',
'x:\A.mdb';'admin';'',A表) select * from 数据库名..B表
/*************导入Access********************/
insert into B表 selet * from openrowset('Microsoft.Jet.OLEDB.4.0',
'x:\A.mdb';'admin';'',A表)”
然后,我就开始试验:
SQL = "insert into openrowset('Microsoft.Jet.OLEDB.4.0','e:\hyh.mdb';'admin';'',Y2Motorh) select * from Y2系列交流异步电机"
Cnn.Execute SQL
但老提示“insert into”语法错误,请高手指点,这是为何?我都快疯了!!!
[[italic] 本帖最后由 hyhhd 于 2007-12-9 18:23 编辑 [/italic]] 其中“Y2系列交流异步电机”为源表,目标数据库“'e:\hyh.mdb'”,目标表“2Motorh”。请大侠指点! 这是我在类模块中做的函数:
''''''''导出指定表到指定的数据库的表中''''''''''''
Public Function ExportTable(SourceDataBaseName As String, SourceTableName As String, DesignationDataBaseName As String, DesignationTableName As String) As Boolean
On Error GoTo ProcError
ExportTable = False
If Cnn.State = adStateClosed Then
Cnn.CursorLocation = adUseClient
Cnn.Mode = adModeReadWrite
Cnn.ConnectionString = Me.LinkString
Cnn.Open Cnn.ConnectionString, Me.UserName, Me.PassWord
End If
' SQL = "insert into openrowset('Microsoft.Jet.OLEDB.4.0','e:\hyh.mdb';'admin';'',Y2Motorh) select * from Y2系列交流异步电机"
' Cnn.Execute SQL
SQL = "insert into openrowset('Microsoft.Jet.OLEDB.4.0','" & DesignationDataBaseName & "';'" & Me.UserName & "';'" & Me.PassWord & "'," & DesignationTableName & ")" & _
"select * from " & SourceTableName
MsgBox SQL
Cnn.Execute SQL
ExportTable = True
ProcExit:
Exit Function
ProcError:
MsgBox "错误号:" & Err.Number & vbCrLf & "描 述:" & Err.Description, 48, "导出指定表到指定的数据库的表中"
Resume ProcExit
End Function 编写这个功能,是为了在vb中实现备份。可能备份整个表还有其他语句,但通过这个“insert into”也应该能实现。我是用的是access。 以前只做过查询,好像 是不能写入什么的
页:
[1]
