目录
SQLServer变量根据作用范围不同主要分为局部变量和全局变量。
1.全局变量
SQLServe全局变量以标记符“@@”开头,是系统预定义的变量,用户不能定义或用SET语句修改这些变量。全局变量的作用范围是任何程序均可以随时调用,通常用于存储SQL Server的配置设定值和功能统计数据。
1.1查看全局变量
语法:
SELECT @@系统变量名
实例:返回上一条T-SQL语句所返回的错误代码
SELECT @@ERROR AS 'T-SQL错误代码'
结果:
137
常见的全局变量有:
@@VERSION:当前sqlserver服务器的版本信息(安装日期、版本,以及处理器的类型)。
@@CONNECTIONS:记录自最后一次服务器启动以来,所有针对这台服务器进行的连接数目,包括没有连接成功的尝试。
@@ERROR:返回上一条T-SQL语句所返回的错误代码。如果sqlserver服务器执行完上一条语句后,执行成功没有错误,则返回@@ERROR的值为0。
@@TRANCOUNT:当前连接中,处于活动状态事务的数目。
@@SERVERNAME:本地服务器名称
2.局部变量
2.1局部变量声明
语法:
DECLARE{@var_name datatype [,...n] }
其中
- @var_name:局部变量的名称
- datatype:局部变量使用的数据类型,可以除text,ntext,image类型外所有的系统数据类型和用户自定义数据类型。
实例:
DECLARE @v1 varchar(100),@V2 date
2.2局部变量赋值
语法:
SET @var_name=expr
SELECT var_name = expr [, var_name = expr] ...
SET和SELECT赋值的区别:
使用场景 | SET | SELECT |
同时对多个变量赋值 | 不支持 | 支出 |
表达式返回多个值 | 出错 | 将返回的最后一个值赋给变量 |
表达式未返回值 | 变量被NULL值 | 变量保持原值 |
实例:
SELECT @v1='Hello World!',@v2='2024-08-09'
2.3查看局部变量
语法:
SELECT @var_name
实例:
SELECT @v1 AS v_str,@v2 AS v_date
结果:
Hello World! 2024-08-09
标签:变量,局部变量,SQLServe,使用,var,全局变量,SELECT,name From: https://blog.csdn.net/weixin_63814296/article/details/141092169