你的位置:首页 > 软件开发 > 数据库 > SQL SERVER中变量的定义、赋值与使用

SQL SERVER中变量的定义、赋值与使用

发布时间:2015-05-13 16:00:31
 本文面向对SQL SERVER中变量操作不熟悉的用户,希望能使他们在看完本文后能对变量操作有具体和全面的认识。 在学习SQL SERVER的过程中,很多时候需要对某些单独的值进行调试,这时就需要在SQL SERVER中对变量进行操作。变量能进行的操作分定义、 ...

 

本文面向对SQL SERVER中变量操作不熟悉的用户,希望能使他们在看完本文后能对变量操作有具体和全面的认识。

 

在学习SQL SERVER的过程中,很多时候需要对某些单独的值进行调试,这时就需要在SQL SERVER中对变量进行操作。

变量能进行的操作分定义、赋值、使用三种,下面以一段简短的代码作为示例:

--定义一个名称为@I的变量,指定其类型为整数

DECLARE @I INT

--对变量@I赋值为

SET @I=3

--输出@I的值

SELECT @I

这就是一个最简单的变量操作,包含上述全部三种类型。但变量能进行的操作远不止于此,下面分别进行描述:

变量声明:

变量声明的第一部分为关键字DECLARE,写在最前面。

变量声明的第二部分为变量名称,必须以@开头,后面可以跟字母、数字、中文和非系统运算符的字符,如@、$、_等。

变量声明的第三部分为变量类型,可以定义SQL SERVER中的所有常规类型,包括各种数字类型、字符串类型、时间类型等,只有极少数特殊数据类型无法在变量中定义。

 

·变量的三个部分用分隔符分开,分隔符可以由多个空格、TAB制表符、换行符组成。

·变量名称的大小写不区分,@A和@a指向同一个变量,不能重复定义。关键字和数据类型也是大小定不区分,含义相同。

·多个变量同时定义用逗号分隔多个变量名称和类型。如DECLARE @A INT,@B VARCHAR(50)。

·定义的变量的生命周期为同一批次或存储过程,即:在你运行的同一批语句(也就是运行时选择的所有语句)或存储过程中,定义的变量都可以使用,变量名称必须唯一。

下面给出常用的变量定义写法,以下变量的声明方式都是合法的:

DECLARE @A INT,@B INT

--最常见的写法

SET @A=1

--如果写SET @A='XX'会报错,因为XX是字符串且无法隐式转换为数字

SET @A='23'

--用标量值函数赋值

SET @A=DBO.FUN_1(@A)

--用子查询赋值

SET @A=(SELECT MAX(number) FROM MASTER..spt_values)

--用其它函数赋值

SET @A=@B

--用表达式赋值

SET @A=@B*5+DBO.FUN_1(@A)-(SELECT MAX(number) FROM MASTER..spt_values)

变量赋值

变量的赋值有多种方式,最常见的方式是以下四种:

  1. SET赋值

    原标题:SQL SERVER中变量的定义、赋值与使用

    关键词:sql

sql
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。