T-SQL 简介
微软对SQL的扩展, 具有的SQL主要特点,同时增加里变量、运算符、函数、流程控制和注释等语言元素,使得其功能更加强大
T-SQL 语句的分类
1、 变量声明,T-SQL语句中可以使用两种类型的变量, 局部变量 和 全局变量
2、 数据定义语言(DDL)用来建立数据库及数据库对象
3、 数据控制语言(DCL)用来控制数据库组件的存放取许可、权限等命令
4、 数据操作语言(DML)用来操作数据库中数据命令
5、 流程控制语言(FCL)用于控制应用程序流程的语句
局部变量:
局部变量必须以标记@作为前缀 ,如@age
局部变量的使用也是先声明,再赋值
局部变量赋值用set或select
全局变量:
局部变量必须以标记@作为前缀 ,如@age
全局变量必须以标记@ @作为前缀,如@@version
全局变量由系统定义和维护,我们只能读取,不能修改全局变量的值
声明局部变量
DECLARE @变量名 数据类型
例如:
DECLARE @name varchar(8)
DECLARE @seat int
赋值
SET @ 变量名 =值
或SELECT @变量名 = 值
例如:
SET @name=‘张三’
SELECT @name=UserName FROM UserInfo ————> 必须确保筛选出的记录只有1条
WHERE UserId=1
全局变量都使用两个@标志作为前缀
变量 | 含义 |
@@ERROR | 最后一个T-SQL错误的错误号 |
@@IDENTITY | 最后一次插入的标识值 |
@@LANGUAGE | 当前使用的语言的名称 |
@@MAX_CONNECTIONS | 可以创建的同时连接的最大数目 |
@@ROWCOUNT | 受上一个SQL语句影响的行数 |
@@SERVERNAME | 本地服务器的名称 |
@@TRANSCOUNT | 当前连接打开的事务数 |
@@VERSION | SQL Server的版本信息 |
IF-ELSE语句
lELSE是可选部分
CASE-END多分支语句
GO 的作用是什么? 整体提交
流程控制语句有哪些? IF WHILE
子查询
数据库的存在检测
EXISTS子查询的语法:
总结:
1.变量的赋值有哪两种方式?输出结果有哪两种方式,有什么区别?
2.T-SQL语句用什么来表示语句块?
3.简单描述一下子查询可以如何划分?