论坛和SQL Server的新手,所以只是试图提高我的评分并提出一些简单的问题。
我有一个包含数百个存储过程的列表,所有这些过程都是SET ANSI_NULLS ON
有没有办法默认这个,这样你就不必在每个脚本的开头声明它了?
答案 0 :(得分:1)
它并非真正存储在存储过程中。
创建存储过程时捕获该设置,当您要求SQL Server编写存储过程脚本时,它会在CREATE PROCEDURE
上方添加适当的设置,以便您可以重新创建存储过程准确。
请参阅CREATE PROCEDURE:
当创建或修改Transact-SQL过程时,数据库引擎会保存SET QUOTED_IDENTIFIER和SET ANSI_NULLS的设置。执行该过程时将使用这些原始设置。因此,在过程运行时,将忽略SET QUOTED_IDENTIFIER和SET ANSI_NULLS的任何客户端会话设置。
uses_ansi_nulls 位模块是使用SET ANSI_NULLS ON创建的。