【发布时间】:2019-05-17 02:36:49
【问题描述】:
我没有太多使用 SQL Server 的经验,我目前使用它来运行一些简单的查询,并且我从 Access 链接到 SQL 表,在那里我有所有繁重的查询。我的目标是每天在 Access 中运行我的所有查询,然后最后将完成的表写入 SQL,我的 Access 前端将读取它们(而不是将它们保存在我的 Access 后端)。
我尝试使用下面的代码来尝试弄清楚如何做到这一点,但我被驱动程序卡住了,我找不到任何关于如何仅使用一个表来做到这一点的参考资料。我们称之为“PO_STATUS_TBL”
Public Sub ADOtest()
Dim ADOConn As New ADODB.Connection
Dim ADOCom As New ADODB.Command
On Error Resume Next
ADOConn.ConnectionString = "Driver =(SQL Server);DRIVER=SQL Server;SERVER=BUSINESS_BWP;Trusted_Connection=Yes"
ADOConn.Open
Debug.Print ADOConn.State
Dim db As Database
Set db = CurrentDb
'db.Execute "INSERT INTO [ODBC;DRIVER=SQL Server;ENCSQL28\BUSINESS_BWP;DATABASE=CurrentDb].SFTransfersDB ( ID, TO ) SELECT ID,TO FROM SFTransfersDB"
End Sub
【问题讨论】:
-
为什么不对链接表运行查询:
INSERT INTO mssql_linked_tbl (...) SELECT ... FROM acc_local_tbl? -
但您可以针对 sql server 运行这些查询。为什么需要将数据传输回数据已经存在的 sql server?
-
冻糕 - 谢谢。这是完成我需要的最简单的方法。我最终使用 DoCmd.RunSQL "INSERT INTO Dbo_PO_STATUS_ALL_TBL Select * FROM PO_STATUS_ALL_TBL" 将数据传输到我想要的表中。你赢了!
标签: sql-server vba ms-access ado transfer