SQL Server 记录(更新中...)

sys.databases

显示所有数据库信息

sys.tables

显示当前数据库所有的表的信息

Go

向 SQL Server 实用工具发出一批 Transact-SQL 语句已结束的信号,Go本身不是T-SQL语句

sq_addrole 等等

SQL Server 系统存储过程以字符 sp_ 开头。

EXEC或EXECUTE

执行 Transact-SQL 批处理中的命令字符串、字符串或执行下列模块之一:系统存储过程、用户定义存储过程、CLR 存储过程、标量值用户定义函数或扩展存储过程。

sqlserver中使用的N‘xxx’

N'xxx' 标识将单引号中的xxx强制转换为Unicode编码的字符,不用在中文情况下会出现乱码.

因为在英文中常用的是ASCII码(一个字符占一个字节),而我们用的中文一个汉字就要占两个字节所以要用N'xxx'强制转换为Unicode编码的字符,这样单引号中不管是英文字符还是汉字一个都占两个字节,统一起来,不会出现乱码! 加上 N 代表存入数据库时以 Unicode 格式存储。

EXEC sp_helpuser '用户名'

查看指定用户被赋予的所有角色,如果后面不指定用户名,则列出所用用户对应的角色。

分隔标识符(数据库引擎)

详细的解释可以点我

left 和 right 函数

LEFT()与RIGHT()函数是相似的,它们都返回一定长度的子字符串。这两个函数的区别是,它们返回的分别是字符串的不同部分。LEFT() 函数返回字符串最左边的字符,顺序从左数到右。RIGHT()函数正好相反,它从最右边的字符开始,以从右到左的顺序返回特定数量的字符。

如果想返回全名中的姓氏或者名字,该怎么办?这需要多做一点工作。如果能确定每个姓名中空格的位置,就可以使用LEFT()函数在全名中读取名字。在这种情况下,可以使用CHARINDEX()或者PATINDEX()函数来定位空格,然后使用LEFT()函数返回空格前的字符。

1 DECLARE @FullName varchar(25), @SpaceIndex tinyint  
2 SET @FullName = 'George Washington' 
3 -- Get index of the delimiting space:  
4 SET @SpaceIndex = CHARINDEX(' ' , @FullName)  
5 -- Return all characters to the left of the space:  
6 SELECT LEFT(@FullName, @SpaceIndex -  1)

如果不想在结果中包含空格,就需要从@SpaceIndex值中减去1,这样结果中就只有名字了。

 isnull 函数  

ISNULL函数有两个参数, 如

 

1 declare @sum int
2 select isnull(@sum, 5)

第一个参数是要判断是否为空的值或变量,如果第一个参数为NULL,那么就返回第二个参数,如果第一个参数不为NULL,那么就返回其本身的值。

identity函数

identity(int, begin, step), 这里第一个参数一般为int, 第二个参数为第一个下标的值,第三个参数为步长。

使用identity(int,1,1)来产生行号,必须把数据插入到一张表中。

1 select rowid=identity(int,1,1),customer_name into tempT from customer
2 select * from tempT

 set nocount on

 关闭影响行数的显示

replace函数

replace(str, old, new)

用new代替str中出现的所有的old

 object_id函数

object_id('对象名', '对象类型')

表的类型为U(即 type='U'), 触发器的类型为TR(即type='TR')

db_name()函数

返回当前数据库名称

getdate()函数

返回当前系统时间

原文地址:https://www.cnblogs.com/Stomach-ache/p/3708139.html