加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

Sqlserver使用T-SQL编程

发布时间:2020-12-12 12:53:19 所属栏目:MsSql教程 来源:网络整理
导读:在T-SQL中变量分为两类,包括全局变量和局部变量 局部变量:1、局部变量必须以@作为前缀。2、局部变量的使用是先声明,后赋值。 全局变量:1、全部变量必须以@@作为前缀。2、全局变量有系统定义和维护,只能读取不能修改全局变量的值。 ????????????????????

在T-SQL中变量分为两类,包括全局变量和局部变量

局部变量:1、局部变量必须以@作为前缀。2、局部变量的使用是先声明,后赋值。
全局变量:1、全部变量必须以@@作为前缀。2、全局变量有系统定义和维护,只能读取不能修改全局变量的值。

???????????????????????????????????? SQL Server2008常用的全局变量
??变量名??????????????????????????????????????????????? 作用??
??@@ERROR?????????????????????????????????????????????? 返回执行的上一个Transac-SQL语句的错误号
??@@IDENTITY??????????????????????????????????????????? 返回最后插入的标识值
??@@MAX_CONNECTIONS???????????????????????????????????? 返回SQL Server实例允许同时进行的最大用户连接数
??@@ROWCOUNT??????????????????????????????????????????? 返回受上一语句影响的行数,如果大于20亿则使用ROWCOUNT_BIG
??@@SERVERNAME????????????????????????????????????????? 返回运行SQL Server的本地服务器的名称
??@@SERVICENAME???????????????????????????????????????? 返回SQL Server正在运行的注册表项的名称,若当前实例为默认实例,则@@SERVICENAME 返回MSSQLSERVER
??????????????????????????????????????????????????????? 若当前实例是命名实例,则函数返回该实例名
??@@TRANCOUNT??????????????????????????????????????????? 返回当前连接的活动事物数
??@@LOCK_TIMEOUT??????????????????????????????????????? 返回当前会话的锁定超时设置

定义局部变量并赋值
1、声明局部变量
语法:DECLARE @varname DataType 例如:declare @varname varchar(20)
语法说明:@varname 为局部变量名,DataType为变量的数据类型
2、为局部变量赋值
语法:SET @varname=VALUE或SELECT @varname=VALUE
*注意:SET关键字通常将已经确定的常量赋值给局部变量。SELECT关键字通常将从数据库中查询出的结果赋值给局部变量,
前提是查询的结果必须和变量类型保持一致,或者是可以自动转换的类型,如果查询的结果超过一条记录,则取最后一条记录
值赋给局部变量。

TABLE数据类型
T-SQL中的变量类型可以是SQL Server中除了TEXT、TEXT、IMAGE外的所有类型,较为特殊的如TABLE类型。TABLE类型定义的变量和普通
的表结构完全相同,因此该类型变量与临时表的作用相似
实例如下:
--TABLE类型举例
DECLARE @MyTable TABLE(ACCOUNT_NAME varchar(20),CODE varchar(18))
--为TABLE类型的变量赋值
INSERT @MyTable SELECT '诸葛亮','421025522122512251' UNION
SELECT '周瑜','5522586456669988555'
SELECT * FROM @MyTable
--将变量的值插入ACCOUNT表中
INSERT INTO ACCOUNT SELECT ACCOUNT_NAME,CODE FROM @MyTable
SELECT * FROM ACCOUNT
GO

GO语句
T-SQL执行到GO语句时,SQLCMD和查询窗口将GO前面已经定义的局部变量清楚,被GO
分开的局部变量不能共享。即GO 语句是作为批处理语句的结束标记,可以控制T-SQL
变量的作用域。

SELECT在结果中输出,PRINT在消息中输出
*注意:PRINT语句数出的变量要求是字符串类型,否则将使用CONVERT函数进行转换

逻辑运算符 1、ALL关键字:主要用于比较特定值与结果集的所有值之间的逻辑关系,结果为布尔值。通常与比较运算符一起使用。 2、ANY关键字:主要用于比较特定值与结果集的所有值之间的逻辑关系,结果为布尔值。通常与比较运算符一起使用。 3、EXISTS关键字:用于判断查询的结果集是否存在特定数据,若果存在则返回TRUE,否则返回FALSE. ?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读