gpt4 book ai didi

sql - 我应该在 SQL Server 2014 中设置 ARITHABORT

转载 作者:行者123 更新时间:2023-12-04 12:20:39 25 4
gpt4 key购买 nike

我正在查看一些前一段时间编写的代码,在调用存储过程之前的数据库助手中,它们设置了 ARITHABORT ON .

根据我的理解,如果 ANSI_Warnings 为 ON,则 2005 年以后的 SQL Server 版本不需要此功能。

我还需要设置吗?它提供性能优势吗?

编辑1:根据this文章我不需要设置它,但我找不到另一个明确的答案。

最佳答案

如果你看 SET ARITHABORT , 将 ANSI_WARNINGS 设置为 ON 将自动将 ARITHABORT 设置为 ON 以及兼容级别为 90 或更高(SQL Server 2005 或更高版本):

Setting ANSI_WARNINGS to ON implicitly sets ARITHABORT to ON when the database compatibility level is set to 90 or higher. If the database compatibility level is set to 80 or earlier, the ARITHABORT option must be explicitly set to ON.



兼容性级别为 80 时,您必须手动设置它。

这也可能是您的软件在打开连接时将其设置为关闭,唯一的解决方案是将其添加到程序中。

升级到兼容级别 90 或更高后,您应该运行:
DBCC FREEPROCCACHE

如果将删除执行计划并重新编译程序。

在创建新计划之前还运行这两个命令可能会很好:
DBCC UPDATEUSAGE(db_name);
EXEC sp_updatestats;

我假设这个数据库可能很旧(SQL Server 2000 或更早版本),运行它也可能很好:
DBCC CHECKDB WITH DATA_PURITY;

DBCC CHECKDB将检查数据库及其使用的数据(类型),并确保您的新版本和兼容性级别一切正常。

关于sql - 我应该在 SQL Server 2014 中设置 ARITHABORT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34313695/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com