SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO
时间: 2024-11-20 19:44:21 浏览: 11
sqlserverSET QUOTED_IDENTIFIER ON
`SET ANSI_NULLS ON` 和 `SET QUOTED_IDENTIFIER ON` 是SQL Server中的命令,用于设定查询语句的行为模式。这些设置通常出现在存储过程或脚本的开始,以确保一致性。
`SET ANSI_NULLS ON` 会启用ANSI标准,使得在比较运算符(如`=`, `<>`)中遇到NULL值时,它们会被当作非NULL处理,即NULL不会与任何其他值相匹配。这有助于避免意外的结果,因为默认情况下SQL Server会隐式转换NULL为对应的数据类型。
`SET QUOTED_IDENTIFIER ON` 则会让SQL Server解析SQL文本时区分大小写,使用双引号(`""`)来标识表名、列名等标识符,而非单引号(' ')。这样可以避免因大小写混淆导致的命名冲突。
在执行这些命令后,脚本的后续部分将按照设置的规则执行。例如:
```sql
USE [BMSCV2OutputWeekly]; -- 使用指定数据库
GO
SET ANSI_NULLS ON;
GO
-- 所有随后的WHERE条件都将明确地排除NULL值,如 WHERE column IS NOT NULL;
SET QUOTED_IDENTIFIER ON;
GO
-- 之后的表名、列名等都会使用双引号,如 "table_name"."column_name";
```
阅读全文