【问题标题】:Transfer table from Ms-Access to SQL Server将表从 Ms-Access 传输到 SQL Server
【发布时间】: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


【解决方案1】:

我最近经历了这个过程。

对于迁移,您可以使用this tool by Microsoft。使用此工具,您可以将表或查询迁移到 MS-SQL - 甚至两者兼而有之。即使有关系。

使用此向导进行简单导出,并通过 Access 中的 ODBC 连接器添加您的一张表。重要的是要有正确的ODBC Driver.

【讨论】:

    【解决方案2】:

    如果您有兴趣,我在 Parfait 的建议下解决了这个问题。通过使用简单的INSERT 语句。

    INSERT INTO Dbo_PO_STATUS_ALL_TBL Select * FROM PO_STATUS_ALL_TBL
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-06
      相关资源
      最近更新 更多