SQL 服务器上的 Microsoft Access 死锁

Posted

技术标签:

【中文标题】SQL 服务器上的 Microsoft Access 死锁【英文标题】:Microsoft Access Deadlocks on SQL server 【发布时间】:2015-07-21 10:17:31 【问题描述】:

我们在通过 MS Access 连接时遇到一些 SQL 死锁问题。

有没有办法调试这种错误。我不是真正的 SQL 专家(抱歉)。

这是我得到的确切错误:

[Microsoft][ODBC SQL Server Driver][SQL Server]Transaction(进程 ID 189)在锁定资源上与另一个进程发生死锁,已被选为死锁牺牲品。重新运行事务。 (#1205)。

我们有一个 SQL Server 2008R2 环境。

【问题讨论】:

【参考方案1】:

您可以尝试以下三件事:

    在每个表中添加一个数据类型为“timestamp”的新列。它会自动用作唯一键,即使它没有设置为键。

    为每个“位”列设置标准值。 Access 无法读取位值中的 NULL,并尝试自行将其设置为 false,这会导致错误。

    在每个表中设置一个主键。确保它是独一无二的。

这些规则仅适用于连接到您的 Access 数据库的表和视图。进行更改后重新连接表。

【讨论】:

以上是关于SQL 服务器上的 Microsoft Access 死锁的主要内容,如果未能解决你的问题,请参考以下文章

mysql vs ms-access DB上的sql查询左连接

microsoft sql server 错误18456

Microsoft SQL Server 上的地理数据

通过 Azure SQL 上的 Microsoft Advertising 平台进行学习

如何将 QNAP Web 服务器连接到 Microsoft MS SQL

为啥 Microsoft 不支持到 SQL Azure 的 OLE DB 连接?