gpt4 book ai didi

sql-server - INSERT 失败,因为以下 SET 选项设置不正确 : 'QUOTED_IDENTIFIER'

转载 作者:行者123 更新时间:2023-12-02 01:56:15 26 4
gpt4 key购买 nike

在执行存储过程时,我们有时会收到以下消息,之后无需任何更改,删除并重新执行存储过程,它就可以正常工作。

DBCORE INSERT failed because the following SET options have incorrect settings: 'QUOTED_IDENTIFIER'. Verify that SET options are correct for use with indexed views and/or indexes on computed columns and/or filtered indexes and/or query notifications and/or XML data type methods and/or spatial index operations.

请帮助我们理解这一点。

最佳答案

QUOTED_IDENTIFIER 是一个“粘性”选项,因此在运行时使用创建过程时有效的设置。由于未对过程进行任何更改,因此该错误表明存储过程是使用 QUOTED_IDENTIFIER OFF 创建的,并且创建/删除了具有错误消息中提到的类型之一的索引。

使用 QUOTED_IDENTIFIER ONANSI_NULLS ON 从 session 中重新创建或更改存储过程,以避免今后出现问题。

编辑:

根据 @Leonidius 的回答和相关评论,SQLCMD 命令行实用程序默认为 QUOTED_IDENTIFIER OFF 以实现向后兼容性。此行为与 SSMS 不同,并且是部署脚本在创建存储过程和其他对象之前未显式包含 QUOTED_IDENTIFIER ON 语句时的常见问题。

我强烈建议您养成指定 -I SQLCMD 参数的习惯,以确保不会无意中设置 QUOTED_IDENTIFIER OFF

关于sql-server - INSERT 失败,因为以下 SET 选项设置不正确 : 'QUOTED_IDENTIFIER' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40487060/

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