无法更新 sql server 中的数据 - arithabort 错误

Posted

技术标签:

【中文标题】无法更新 sql server 中的数据 - arithabort 错误【英文标题】:Fail to update datum in sql server - arithabort error 【发布时间】:2015-06-23 07:54:05 【问题描述】:

在一个 vb.net 项目中,我几乎无法解决我遇到的 arithabort 问题的每一个插入/更新查询,现在,我的项目对我来说运行良好,昨天,通过在另一台服务器上部署应用程序(windows 2003 R2 SP2),我再次遇到了 arithabort 问题,我不知道如何再次解决这个问题。 为了执行插入/更新查询,我使用了 ADODB.Connection 对象,在运行其中一个之前,我执行了以下两个查询:

set NUMERIC_ROUNDABORT off
set ANSI_NULLS, ANSI_PADDING, ANSI_WARNINGS, ARITHABORT, CONCAT_NULL_YIELDS_NULL, QUOTED_IDENTIFIER on

有什么想法吗? 谢谢

编辑:刚刚注意到在服务器上,安装了 SQL Server 2008,就我而言,我使用的是 SQL Server 2008 R2,这将解释遇到的错误。

【问题讨论】:

调整查询以便不引发 ARITHABORT 怎么样?例如。不要除以零。 我的查询中没有划分。手动修改 ARITHABORT 参数解决了我的问题。 【参考方案1】:

问题解决了,我手动更改了这个参数的值:http://blogs.msdn.com/b/mikkole/archive/2014/01/03/queries-failing-because-of-the-arithabort-setting.aspx 默认设置为关闭,现在设置为开启。

【讨论】:

以上是关于无法更新 sql server 中的数据 - arithabort 错误的主要内容,如果未能解决你的问题,请参考以下文章

如何在SQL Server 2012中动态替换表中的所有值?

sql server无法修改数据

SQL Server:无法通过 SSMS 编辑数据

无法使用R中的sqlSave追加到SQL Server表

SQL Server 错误:用户登录失败 -- 在迁移命令更新数据库 [重复]

无法将数据从 DataSet 更新到 C# 和 SQL Server 上的数据库