繁体   English   中英

从 SQL Server 如何从 MS Access 数据库读取一个或多个表列中的更新数据?

[英]From SQL Server how do I read from an MS Access database to UPDATE data in one or more table columns?

我的 SQL Server 数据库表有一列需要使用 MS Access 文件中的数据进行更新。 如何查询 MS Access 数据以执行此类更新?

导入向导似乎只处理插入新数据而不处理更新现有数据? 还是我误解了如何使用向导?

听起来您想从 SQL Server 端运行该操作……将 Access 数据“拉”到 SQL Server 中。 如果是这样,您可以将 Access 文件设置为 SQL Server 中的链接服务器。 我没有这样做,但已经阅读了其他人拥有的案例。 我从如何使用 MS Access 中的链接表将 SQL Server 数据库链接到 MS Access 中复制了这些步骤 在 SQLServerPedia。

1) Open EM.
2) Goto the Server to which you want to add it as linked server.
3) Then goto security > Linked Servers section from console tree.
4) Right click on the Client area. Then New Linked Server.
5) Give a name and Specify Microsoft Jet 4.0 as Provider string.
6) Provide the location of the MDB file.
7) Click OK.

或者,您可以从访问端运行操作,并将数据推送到 SQL Server。 如果这对您有用,请使用 Olivier 的说明来设置 ODBC 链接的 SQL Server 表。 或者您在不创建 DSN 的情况下执行此操作: 使用 DSN-Less Connections

无论采用哪种方式链接表,您在 Access 中运行的UPDATE语句都可能如此简单:

UPDATE
    linked_table AS dest
    INNER JOIN local_table AS src
    ON dest.pkey_field = src.pkey_field
SET dest.access_data = src.access_data
WHERE
    dest.access_data <> src.access_data
    OR dest.access_data Is Null;

首先在 Windows 中设置一个 ODBC DSN。 打开控制面板 > 管理工具 > 数据源 (ODBC)。 请注意,在 64 位 Windows 上,这可能会打开 64 位管理员。 但是,如果您有 32 位访问权限,则需要 32 位管理员 (%windir%\\SysWOW64\\odbcad32.exe)。

然后您可以将 SQL-Server 表链接到您的访问数据库。 在“链接表”对话框中,选择“ODBC 数据库()”作为文件类型。

然后,您可以查询链接的 SQL Server 表,就像它们是访问表一样。

请参见使用 SQL Server 数据库配置 Microsoft Access 链接表

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM