SQL笔记

1:在SQL Server 中经常出现N''的语句,大写字母N作前缀的 N'xxx' ,是将其内容xxx作为 Unicode字符常量(双字节)。而没有N的 'yyy', 是将yyy 作为字符常量(单字节)。

2:当 SET ANSI_NULLS 为 ON 时,表示SQL语句遵循SQL-92标准。当 SET ANSI_NULLS 为 OFF 时,表示不遵从 SQL-92 标准。

SQL-92 标准要求对空值(NULL)的等于 (=) 或不等于 (<>) 比较取值都为 FALSE,即对所有字段的进行操作:= NULL 或者 <>NULL,返回的都是false。如果用这2个条件进行查询都将查询不到任何的数据。即使 column_name 中存在空值,使用 WHERE column_name = NULL 的 SELECT 语句仍返回零行。即使 column_name 中存在非空值,使用 WHERE column_name <> NULL 的 SELECT 语句仍返回零行。

3:IDENTITY [ ( seed , increment ) ],在表中创建一个标识列。该属性与 CREATE TABLE 及 ALTER TABLE Transact-SQL 语句一起使用。

seed  装载到表中的第一个行所使用的值。increment  增量值,该值被添加到前一个已装载的行的标识值上。

说明  IDENTITY 属性与 SQL-DMO Identity 属性不同,后者表现列的行标识属性。

4:对列存储长度小于列的定义大小的值以及在 char、varchar、binary 和 varbinary 数据中含有尾随空格的值的方式进行控制。此设置只影响新列的定义;http://www.cnblogs.com/wufengtinghai/archive/2013/05/03/3057816.html

5:DECLARE,申明局部变量,作用域在其申明所在的批处理,批处理以GO作为结束标注。http://www.cnblogs.com/383855647chenyu/p/3860162.html

6:SET NOCOUNT为 ON 时,不返回计数(表示受 Transact-SQL 语句影响的行数)。当 SET NOCOUNT 为 OFF 时,返回计数。 

即使当 SET NOCOUNT 为 ON 时,也更新 @@ROWCOUNT 函数。 http://www.cnblogs.com/lmfeng/archive/2011/10/12/2208821.html

7:dataname返回代表指定日期的指定日期部分的字符串。http://www.cnblogs.com/zgqys1980/archive/2006/07/09/446272.html

8:SQL中的标识列又称标识符列,习惯上又叫自增列。http://www.cnblogs.com/luowende2012/archive/2012/05/09/2491903.html

 9:起名要避免与关键词相同,如user。https://zhidao.baidu.com/question/577877383.html

10:SUBSTRING的用法,提取出一段内容。http://www.cnblogs.com/xionglee/articles/1444927.html

11:MS SQL 错误:无法绑定由多个部分组成的标识符 "xxxxx"。。http://www.cnblogs.com/kerrycode/p/3361231.html

12:SQL中SET 怎么从一张表中取一个值赋值一个字符变量?????

13:SQL 注入。http://blog.csdn.net/stilling2006/article/details/8526458

14:sp_executesql的使用,和我们自定义的存储过程类似,但是里面如果包含变量需要在外部申明定义。http://www.cnblogs.com/wanyuan8/archive/2011/11/09/2243483.html

sp_executesql动态输入参数:http://blog.163.com/zangyunling@126/blog/static/16462450520113212357892/

15:FOR XML PATH 的4种用法:https://www.douban.com/note/381511836/

16:中文字符匹配想要匹配一个包含中文字符的字符串可用如下语句:http://blog.csdn.net/feilniu/article/details/5623313
LIKE N'%[一-龥]%' COLLATE Chinese_PRC_BIN
或是:
LIKE N'%[吖-咗]%' COLLATE Chinese_PRC_CI_AS
这是因为在以上两种不同的排序规则下,汉字的排列顺序是不同的。

17:SYSCOLUMNS WHERE ID=OBJECT_ID('表名')返回所有列的名称。http://blog.csdn.net/firetaker/article/details/5573656

原文地址:https://www.cnblogs.com/xiaoxue126/p/7073022.html