首页 > 代码库 > T-SQL(1)-变量(芮)

T-SQL(1)-变量(芮)

使用变量和C语言一样,变量分为:q       局部变量:q       局部变量必须以标记@作为前缀 ,如@ageq       局部变量的使用也是先声明,再赋值q       全局变量:q       全局变量必须以标记@ @作为前缀,如@@versionq       全局变量由系统定义和维护,我们只能读取,不能修改全局变量的值 局部变量q       声明局部变量     DECLARE   @变量名  数据类型例如:DECLARE @name varchar(8)DECLARE @seat intq       赋值        SET @变量名 =SELECT  @变量名 = 值例如:SET @name=‘张三’SELECT @name=stuName FROM stuInfo        WHERE stuNo=‘s25302’ 必须确保筛选出的记录只有1条,否则取最后一条,所以T-SQL语句后面一般接WHERE筛选条件。 问题:编写T-SQL查找张三的左右同桌 ?分析:第一步,找出“张三“的座位号;第二步,张三的座位号加1或减1例子:/*--查找张三的信息--*/DECLARE @name varchar(8)  --学员姓名SET @name=‘张三’        --使用SET赋值SELECT * FROM stuInfo WHERE stuName = @name/*--查找张三的左右同桌--*/DECLARE @seat int  --座位号SELECT @seat=stuSeat FROM stuInfo  --使用SELECT赋值   WHERE stuName=@nameSELECT * FROM stuInfo   WHERE (stuSeat = @seat+1) OR (stuSeat = @seat-1)GO 全局变量     全局变量都使用两个@标志作为前缀


变量含义
@@ERROR最后一个T-SQL错误的错误号@@IDENTITY最后一次插入的标识值@@LANGUAGE当前使用的语言的名称@@MAX_CONNECTIONS可以创建的同时连接的最大数目@@ROWCOUNT 受上一个SQL语句影响的行数@@SERVERNAME本地服务器的名称@@TRANSCOUNT当前连接打开的事务数@@VERSION SQL Server的版本信息重点是粗线标识的全局变量,其他的可以到SQL Server帮助中查询。 例子:print ‘SQL Server的版本’+@@VERSIONprint ‘服务器的名称: ‘+@@SERVERNAMEINSERT INTO stuInfo(stuName,stuNo,stuSex,stuAge) VALUES(‘武松’,’s25328’,’男’,’23’)--如果大于0表示上一条语句执行有错误print ‘当前错误号’+convert(varchar(5),@@ERROR) print ‘刚才报名的学员,座位号为:’ +convert(varchar(5),@@IDENTITY )UPDATE stuinfo SET stuAge=85 WHERE stuName=‘张三’print ‘当前错误号’+convert(varchar(5),@@ERROR)GO

 

T-SQL(1)-变量(芮)