“查询选项”中的“执行”(ANSI 页)

使用此页可指定 MicrosoftSQL Server 使用 ISO (ANSI) 标准中指定的全部或部分设置运行查询。

  • SET ANSI_DEFAULTS
    选择所有默认的 ISO 设置。默认情况下,此框不可用,因为只配置了部分 ISO 设置。

  • SET QUOTED_IDENTIFIER
    用引号将对象标识符引起来。默认情况下选择此选项。

  • SET ANSI_NULL_DFLT_ON
    在 CREATE TABLE 或 ALTER TABLE 语句执行过程中,没有显式定义为 NOTNULL 的所有用户定义的数据类型或列都将默认为允许空值。默认情况下选择此选项。

  • SET IMPLICIT_TRANSACTIONS
    默认情况下不选择此选项。

  • SET CURSOR_CLOSE_ON_COMMIT
    在提交事务时,自动关闭所有打开的游标(遵从 ISO 标准)。如果清除此选项(设置为 OFF),游标将跨越事务边界始终保持打开状态,游标只有在关闭连接或显示关闭它们时才关闭。默认情况下不选择此选项。

  • SET ANSI_PADDING
    对列存储长度小于列的定义大小的值,以及在 charvarcharbinaryvarbinary 数据中含有尾随空格的值的方式进行控制。此设置只影响新列的定义。创建列后,SQL Server 会基于创建列时的设置存储这些值。如果此设置以后发生更改,现有的列不受影响。默认情况下,此复选框为选中状态。

  • SET ANSI_WARNINGS
    指定对几种错误条件采用 ISO 标准行为:

    • 选中此复选框后,如果在聚合函数(如 SUM、AVG、MAX、MIN、STDEV、STDEVP、VAR、VARP 或 COUNT)中出现了空值,则会生成一条警告消息。如果设置为 OFF,则不会发出任何警告。

    • 如果清除此复选框,则在发生被零除错误和算术溢出错误时,将导致语句回滚并生成一条错误信息。如果设置为 OFF,则在发生被零除错误和算术溢出错误时,将导致返回空值。如果尝试对 character、Unicode 或 binary 列执行 INSERT或 UPDATE操作,而这些列中的新值长度超出列的最大大小,那么,在发生被零除错误或算术溢出错误时,将导致返回空值。如果 SET ANSI_WARNINGS 为 ON,则根据 ISO 标准,将取消 INSERT 或 UPDATE 操作。对于字符列,将忽略尾随空格;对于二进制列,将忽略尾随空值。当设置为 OFF 时,数据将截断为列的大小,并且语句将继续执行。

    默认情况下选择此选项。

  • SET ANSI_NULLS
    指定在与 Null 值一起使用等于 (=) 和不等于 (<>) 比较运算符时采用符合 ISO 标准的行为。当选中 SET ANSI_NULLS 时,所有与 Null 值进行比较求得的值均为 UNKNOWN,这是符合 ISO 标准的行为。如果未选中 SET ANSI_NULLS,则在数据值为 NULL 时,所有数据与空值的比较求得的值为 TRUE。默认情况下选择此选项。

  • 重置为默认值
    将此页上的所有值重置为原始默认值。