1 NOCOUNT选项

当 SET NOCOUNT 为 ON 时,不返回计数。
当 SET NOCOUNT 为 OFF 时,返回计数。

eg:

if object_id(N'table_test',N'U') IS not null
drop table table_test
go
CREATE TABLE table_test(id INT,name VARCHAR(50))
go
INSERT INTO table_test VALUES(1,'xiaoming'),(2,null)
go SET NOCOUNT ON
SELECT * FROM table_test
GO
SET NOCOUNT OFF
SELECT * FROM table_test
GO

2 ANSI_NULLS 选项

SQL92 ANSI/ISO(简称SQL-92)标准要求对空值(NULL)的等于 (=) 或不等于 (<>) 比较取值都为 FALSE。

当 SET ANSI_NULLS 为 ON 时,表示SQL语句遵循SQL-92标准。
字段(column_name) 中包含空值,使用 WHERE column_name = NULL 的 SELECT 语句仍返回零行。

当 SET ANSI_NULLS 为 OFF 时,表示不遵从 SQL-92 标准。

使用 WHERE column_name = NULL 的 SELECT 语句返回
column_name 中包含空值的行。

eg:

SET ANSI_NULLS ON

SELECT TOP 100 * FROM table_test WHERE name = NULL

GO

SET ANSI_NULLS OFF

SELECT TOP 100 * FROM table_test WHERE name = NULL

GO

 3 QUOTED_IDENTIFIER选项(引用标识符)

数据库对象的名称即为其标识符。Microsoft SQL Server 中的所有内容都可以有标识符。服务器、数据库和数据库对象(例如表、视图、列、索引、触发器、过程、约束及规则等)都可以有标识符。

当 SET QUOTED_IDENTIFIER 为 ON 时,

标识符可以由双引号或者”[ ]”分隔,而文字必须由单引号分隔。

当 SET QUOTED_IDENTIFIER 为 OFF 时,

标识符不可加引号,且必须符合所有 Transact-SQL (微软对SQL的扩展)标识符规则。

SET QUOTED_IDENTIFIER OFF
GO
CREATE TABLE "select" ("identity" INT IDENTITY NOT NULL, "order" INT NOT NULL);
GO

SET QUOTED_IDENTIFIER ON;
GO
CREATE TABLE "select" ("identity" INT IDENTITY NOT NULL, "order" INT NOT NULL);
GO
SELECT "identity","order"
FROM "select"
ORDER BY "order";
GO
DROP TABLE "SELECT";
GO
SET QUOTED_IDENTIFIER OFF;
GO

4 XACT_ABORT选项

指定当 Transact-SQL 语句出现运行时错误时,SQL Server 是否自动回滚到当前事务。

当 SET XACT_ABORT 为 ON 时,如果执行 Transact-SQL 语句产生运行时错误,则整个事务将终止并回滚。

当 SET XACT_ABORT 为 OFF 时,有时只回滚产生错误的 Transact-SQL 语句,而事务将继续进行处理。如果错误很严重,那么即使 SET XACT_ABORT 为 OFF,也可能回滚整个事务。OFF 是默认设置。

IF OBJECT_ID(N'demo',N'U') IS NOT NULL
DROP TABLE demo
create table demo(id int not null)
go
--set xact_abort on
begin tran
insert into demo values (1)
insert into demo values (null)
insert into demo values (2)
commit tran
go
--set xact_abort off
Select * from demo

最新文章

  1. Android中使用ListView实现分页刷新(线程休眠模拟)
  2. Secrets
  3. 06day2
  4. linux的cron服务及应用
  5. Android——列表选择框(Spinner)
  6. RedHat搭建IPA-Server
  7. 用Django搭建个人博客—(3)
  8. 实战 ASP.NET MVC Web API
  9. Java 垃圾回收机制学习
  10. .net core 13
  11. 【NO.14】jmeter-处理结果
  12. 【SSH框架】之Spring系列(一)
  13. java发送邮件时遇到的坑
  14. Leetcode_114_Flatten Binary Tree to Linked List
  15. WAV文件有多大?MP3文件有多大?使用Lame 压缩比是多少?
  16. Mac下Sublime text2中文乱码问题的解决
  17. JACKSON详解
  18. 作为一名程序员,在面试中如何展现你Python的coding能力?
  19. 初始cfx开发webservice, 简单实例应用
  20. 【多视图几何】TUM 课程 第1章 数学基础:线性代数

热门文章

  1. PHP生成随机数函数rand(min,max)
  2. MyBatis:SQL语句中的foreach标签的详细介绍
  3. altium designer同一工程多个原理图如何快速查找同一网络标号
  4. [BZOJ3600] 没有人的算术 [重量平衡树+权值线段树]
  5. BZOJ1296 [SCOI2009]粉刷匠 【dp】
  6. 【POJ 2406 Power Strings】
  7. WebStorm 2017.1.2 汉化破解
  8. java泛型的一些解释
  9. SpringBoot程序启动时执行初始化代码
  10. keystone总结