【发布时间】:2019-07-24 02:39:27
【问题描述】:
当我尝试在 SET ANSI_PADDING OFF 之后运行“创建表”sql 语句时,我在 sql server 2014 (SP2) 中遇到错误。该语句失败并显示错误消息
“消息 1934,级别 16,状态 1,过程日志,第 7 行 SELECT 失败,因为以下 SET 选项的设置不正确:'ANSI_PADDING'。"
这曾经可以正常工作(尽管我有一段时间没有在我的 sql server 实例上明确尝试过)。
-- 产生错误的代码: 使用测试 设置 ansi_padding 关闭 创建表 test_ap3 (i int)
-- 运行良好的代码: 使用测试 设置 ansi_padding 创建表 test_ap3 (i int)
注意:带有“set ansi_padding off”的创建表在其他 sql server 上运行良好(我最近在 sql server 2014 SP3 标准版和 sql server 2016 上尝试过)。 我尝试在本地服务器上创建一个新数据库,但新数据库上没有出现此问题。两个数据库的选项设置相同。旧数据库的兼容性级别设置为 2012,但即使我将其更改为 2014,问题仍然存在。
【问题讨论】:
-
为什么需要
set ansi_padding off上桌?这也可能有帮助:social.msdn.microsoft.com/Forums/sqlserver/en-US/… -
感谢您的链接,但它无助于解释或解决问题。我确实知道 ANSI_PADDING 已被弃用,但它尚未被删除,所以它应该仍然有效。
-
您根据链接检查了数据库上没有 DDL 触发器?您具体需要
ansi_padding off做什么?
标签: sql-server