我相信SQL Server 2014 。出于某种原因,其中的程序SSISDB
已QUOTED_IDENTIFIER
设置为关闭,并且想知道是否有人有任何参考框架来说明为什么会这样,以及它是否重要。
不幸的是,我不知道是否建议更改这些程序以将其设置为ON,但如果有人对此有任何想法,我将不胜感激。
我相信SQL Server 2014 。出于某种原因,其中的程序SSISDB
已QUOTED_IDENTIFIER
设置为关闭,并且想知道是否有人有任何参考框架来说明为什么会这样,以及它是否重要。
不幸的是,我不知道是否建议更改这些程序以将其设置为ON,但如果有人对此有任何想法,我将不胜感激。
最佳 MSSQL 实践是set it OFF
.
它基本上允许您使用保留关键字或可以包含 Transact-SQL 通常不允许的字符。即“选择”、“来自”、“身份”等。
当SET QUOTED_IDENTIFIER is OFF
, 标识符不能被引用并且必须遵循标识符的所有 Transact-SQL 规则。参考...
当SET QUOTED_IDENTIFIER is ON
(默认)时,所有由双引号分隔的字符串都被解释为对象标识符。因此,带引号的标识符不必遵循标识符的 Transact-SQL 规则。它们可以是保留关键字,并且可以包含 Transact-SQL 标识符中通常不允许的字符。
的使用QUOTED_IDENTIFIER is ON
更改设置所需的权限
例子
SET QUOTED_IDENTIFIER OFF
GO
CREATE TABLE "select" ("identity" INT IDENTITY NOT NULL, "order" INT NOT NULL);
↪使用“select”作为表名,上面的查询会失败QUOTED_IDENTIFIER set OFF
SET QUOTED_IDENTIFIER ON;
GO
CREATE TABLE "select" ("identity" INT IDENTITY NOT NULL, "order" INT NOT NULL);
↪使用“select”作为表名,上面的查询会成功QUOTED_IDENTIFIER set ON