SET ANSI_NULLS ON和SET QUOTED_IDENTIFIER ON「建议收藏」

SET ANSI_NULLS ON和SET QUOTED_IDENTIFIER ON「建议收藏」代码开头经常会出现这几行代码:USE[BMSCV2OutputWeekly]#指明要使用的数据库GO#当脚本运行到go语句时,就会直接对go语句之前的代码进行批处理操作。SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGO一、SETANSI_NULLSON表示对等于(=)或不等于(<>)空值(NULL)进行判断时,遵从SQL-92规则。SQL-92规则中,在对等于(=)或不等于(<>)空值(nul_setansi_nullsongosetquoted_identifieron

代码开头经常会出现这几行代码:

USE [BMSCV2OutputWeekly]  #指明要使用的数据库
GO    #当脚本运行到go语句时,就会直接对go语句之前的代码进行批处理操作。 

SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

一、SET ANSI_NULLS ON
表示对等于(=)或不等于(<>)空值(NULL)进行判断时,遵从 SQL-92 规则。
SQL-92规则中,在对等于(=)或不等于(<>)空值(null)进行比较时,取值为false。
(1)

#如果字段[name]中含有空值
SELECT * FROM STUDENT WHERE NAME=NULL;

在这里插入图片描述
(2)

#如果字段[name]中含有非空值
SELECT * FROM STUDENT WHERE NAME<>NULL;

在这里插入图片描述
二、SET ANSI_NULLS OFF
表示对等于(=)或不等于(<>)空值(NULL)进行判断时,不遵从 SQL-92 规则。
(1)

#如果字段[name]中含有空值
SELECT * FROM STUDENT WHERE NAME=NULL;

在这里插入图片描述
(2)

#如果字段[name]中含有非空值
SELECT * FROM STUDENT WHERE NAME<>NULL;

在这里插入图片描述

三、SET QUOTED_IDENTIFIER ON
表示使用引用标识符,标识符可以用双引号分隔,但是,文字必须用单引号分隔。

select "ID","name","score" from Stuscore where name='张三';
select id,name,score from Stuscore where name='张三';

在这里插入图片描述
三、SET QUOTED_IDENTIFIER OFF
表示标识符不能用双引号分隔,否则标识符会被当做字符串值来返回,不再是字符来返回。而且,文字部分必须用单引号或双引号分隔。
(1)

select "ID","name","score" from Stuscore where name='张三' OR name="小红";

在这里插入图片描述
(2)

select id,name,score from Stuscore where name='张三' or name="小红";

在这里插入图片描述

今天的文章SET ANSI_NULLS ON和SET QUOTED_IDENTIFIER ON「建议收藏」分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/59313.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注