|
13
|
| Will Rickards · 技术社区 · 17 年前 |
|
|
1
6
我想这句话是从联机丛书中得到的提示:“当您在计算列或索引视图上创建或更改索引时,set arithabort必须打开。”因此nodes方法必须在内部创建索引视图或其他东西。但这只是一个有根据的猜测。 |
|
|
2
4
下面是我在从.NET客户端调用带有XML输入参数的存储过程时发现的ARITHABORT问题的解决方案。
|
|
|
3
3
根据这个线程(在底部),它可能取决于您的兼容级别: |
|
|
4
2
威尔·里卡兹和约翰·吉尔默的回答是可靠的。他们回答了“为什么”和“什么时候”。我将详细介绍一下约翰的回答: 我刚刚遇到了同样的问题,我想知道为什么ARITHABORT设置很重要——尤其是因为我在其他几个服务器上运行的相同软件没有问题。使用两个不同的服务器,我执行了以下操作:
结果发现,这两个服务器之间的区别在于数据库兼容级别:
|
|
|
5
0
除非创建XML索引,否则不需要将arithabort设置为on。也就是说,我知道在使用ADO.NET(我认为它将ARITHABORT设置为OFF)时存在一些性能问题,这不会影响启用它,因为它将在查询执行过程中发生溢出或被零除错误时终止查询。 |
|
John D · 需要为NULL或NOT NULL的WHERE子句 1 年前 |
|
Marc Guillot · 记录值时忽略冲突 1 年前 |
|
|
Fachry Dzaky · 正确使用ROW_NUMBER 1 年前 |
|
|
TriumphTruth · 从满足特定条件的数据集中选择1行 1 年前 |