从SQL Server链接表中插入到另一个Access.accdb中进行选择

自由人

我有一个MS Access 2010数据库,其中的表链接到SQL Server 2008R2后端。

我需要从链接表中选择记录,并将它们插入到具有本地表其他Access .accdb中。

这是我的代码:

Const DbPath = "L:\path\"
Const DbBaseName = "FileTransfer OnSite"
Const DbExt = ".accde"
Const LockDbExt = ".laccdb"
Const ConString = "Driver={Microsoft Access Driver (*.mdb, *.accdb)};Dbq="

Dim Con As ADODB.Connection
Dim RS As ADODB.Recordset
Dim DbOutName As String
Dim DbInName As String
Dim Overwrite As Integer
Dim PutStr As String

'do some sanity checking first, then
FileCopy DbInName, DbOutName    'make a physical copy of the blank on-site file
Set Con = New ADODB.Connection
Con.ConnectionString = ConString & DbOutName
Con.Open

PutStr = "INSERT INTO [;Database=" & DbOutName & "].[Loan] (Loan, FromFirm, ToFirm, Borrower, PropStreet, PropCity, PropState, PropZip, Judicial, Examiner) " & _
    "SELECT Loan, FromFirm, ToFirm, Borrower, PropStreet, PropCity, PropState, PropZip, Judicial, Examiner " & _
    "  FROM Loans " & _
    " WHERE FromFirm = '" & Me.cmbFrom & "' " & _
    "   AND ToFirm = '" & Me.cmbTo & "'"
Set RS = Con.Execute(PutStr)

请注意,[; Database = ...]。[Loan]是目标数据库的本地表,并且FROM Loans引用源db中运行此代码的外部链接表。

PutStr决心解决:(为所涉及公司的隐私而编辑)

INSERT INTO [;Database=L:\Path\FileTransfer OnSite-E-A.accde].[Loan] (Loan, FromFirm, ToFirm, Borrower, PropStreet, PropCity, PropState, PropZip, Judicial, Examiner)
SELECT Loan, FromFirm, ToFirm, Borrower, PropStreet, PropCity, PropState, PropZip, Judicial, Examiner
  FROM Loans
 WHERE FromFirm = 'E'
   AND ToFirm = 'A'

Set RS =在行上收到一条错误消息,指出:

Run-time error '-2147217865 (80040e37)':
[Microsoft][ODBC Microsoft Access Driver] The Microsoft Access
database engine cannot find the input table or query 'Loans'. Make
sure it exists and that its name is spelled correctly.

Loans在Access中定义为到SQL Server后端的外部链接表。数据库中的其他代码可以正常访问该表。我想到的一件事是,该表Loans不在SQL Server的默认架构中,但据我所知,Access在此刻并不在意。我可以从Loans其他位置进行选择,因为架构信息包含在链接中-Access只是将其称为Loans我确实尝试引用Loans[schema].[Loans],但Access也不喜欢那样。

我不确定为什么Access无法找到Loans运行代码的数据库中定义的表我以为我可以将其分解成来自贷款的SELECT,然后是一个循环,以插入到外部.accdb中,但是如果可能的话,我宁愿在单个查询中进行整洁。

汉素

在我的Access数据库中,我有一个名为web_links的链接表,它是指向SQL Server表的ODBC链接。因此,此查询检索该表的所有数据:

SELECT
    l.link_id,
    l.date_added,
    l.url,
    l.notes
FROM web_links AS l;

我还有另一个Access db文件,名为database2.accdb该数据库包含一个名为web_links的本地Access表

因此,从当前的Access数据库(我成功运行了SELECT上面查询的数据库)中,我可以从SQL Server检索数据并将这些数据附加到database2.accdb中的表中

INSERT INTO web_links
    (
        link_id,
        date_added,
        url,
        notes
    ) IN 'C:\share\Access\database2.accdb'
SELECT
    l.link_id,
    l.date_added,
    l.url,
    l.notes
FROM web_links AS l;

关键是Access可以让我方便地指示将接收附加数据的数据库的位置:

IN 'C:\share\Access\database2.accdb'

尽我所知,此描述与您要完成的工作类似。如果我做对了,那么您就不需要操心ADO,连接字符串,对象等等。只需执行一个告诉db引擎在哪里可以找到目标数据库的查询。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SQL Server:插入到表中,从另一个表中选择

来自分类Dev

Microsoft SQL Server,选择一个ID并插入到另一个表中

来自分类Dev

SQL-根据另一个表中给出的匹配值在一个表中进行选择

来自分类Dev

从 SQL Server 中的另一个数据库表插入选择

来自分类Dev

如何使用查询结果选择到SQL Server中的另一个表

来自分类Dev

如何使用SQL将具有不同选择条件的多列插入到另一个表中

来自分类Dev

从另一个表进行SQL插入

来自分类Dev

使用 Oracle SQL 从基于从另一个表拆分的正则表达式的表中进行选择

来自分类Dev

SQL Server:选择记录,而不链接到另一个表

来自分类Dev

SQL Server无需从表中进行选择即可插入EXCEPT

来自分类Dev

使用另一个表中的条件从表中进行SQL查询

来自分类Dev

将一个表中的值插入到 SQL Server 中的另一个表中

来自分类Dev

SQL Server触发器信息插入到另一个表中

来自分类Dev

如何根据 SQL Server 中的另一个表列值限制插入到表?

来自分类Dev

将一个表中的值链接到另一个表,并根据sql中另一个表中的列对一个表进行切片

来自分类Dev

SQL Server 2008 R2:选择另一个表中存在的记录

来自分类Dev

SQL Server:根据另一个表中的日期进行过滤

来自分类Dev

如何从一个表中选择许多行并插入到另一个表中特定行的特定JSONB字段中?但是在单个原始SQL查询中

来自分类Dev

从多个表中选择,插入另一个表 Oracle SQL 查询

来自分类Dev

如何从两个表中进行SQL选择并获得一个json对象

来自分类Dev

在小型SQL Server查询中进行选择和计数

来自分类Dev

SQL仅选择特定字段并将其插入另一个表+静态值

来自分类Dev

将选择查询的转置插入另一个表的 SQL 查询

来自分类Dev

在SQL中进行唯一选择,选择所有“类别”,但不区分一个

来自分类Dev

MySQL从另一个表中进行选择时以自动增量的方式插入表中

来自分类Dev

将数组传递给sql并将其插入一个值的链接表中

来自分类Dev

SQL插入语句,其中一个值从另一个表中选择

来自分类Dev

SQL Server-选择到另一个选择中出现错误

来自分类Dev

SQL将数据从另一个表插入到表中

Related 相关文章

  1. 1

    SQL Server:插入到表中,从另一个表中选择

  2. 2

    Microsoft SQL Server,选择一个ID并插入到另一个表中

  3. 3

    SQL-根据另一个表中给出的匹配值在一个表中进行选择

  4. 4

    从 SQL Server 中的另一个数据库表插入选择

  5. 5

    如何使用查询结果选择到SQL Server中的另一个表

  6. 6

    如何使用SQL将具有不同选择条件的多列插入到另一个表中

  7. 7

    从另一个表进行SQL插入

  8. 8

    使用 Oracle SQL 从基于从另一个表拆分的正则表达式的表中进行选择

  9. 9

    SQL Server:选择记录,而不链接到另一个表

  10. 10

    SQL Server无需从表中进行选择即可插入EXCEPT

  11. 11

    使用另一个表中的条件从表中进行SQL查询

  12. 12

    将一个表中的值插入到 SQL Server 中的另一个表中

  13. 13

    SQL Server触发器信息插入到另一个表中

  14. 14

    如何根据 SQL Server 中的另一个表列值限制插入到表?

  15. 15

    将一个表中的值链接到另一个表,并根据sql中另一个表中的列对一个表进行切片

  16. 16

    SQL Server 2008 R2:选择另一个表中存在的记录

  17. 17

    SQL Server:根据另一个表中的日期进行过滤

  18. 18

    如何从一个表中选择许多行并插入到另一个表中特定行的特定JSONB字段中?但是在单个原始SQL查询中

  19. 19

    从多个表中选择,插入另一个表 Oracle SQL 查询

  20. 20

    如何从两个表中进行SQL选择并获得一个json对象

  21. 21

    在小型SQL Server查询中进行选择和计数

  22. 22

    SQL仅选择特定字段并将其插入另一个表+静态值

  23. 23

    将选择查询的转置插入另一个表的 SQL 查询

  24. 24

    在SQL中进行唯一选择,选择所有“类别”,但不区分一个

  25. 25

    MySQL从另一个表中进行选择时以自动增量的方式插入表中

  26. 26

    将数组传递给sql并将其插入一个值的链接表中

  27. 27

    SQL插入语句,其中一个值从另一个表中选择

  28. 28

    SQL Server-选择到另一个选择中出现错误

  29. 29

    SQL将数据从另一个表插入到表中

热门标签

归档