MSSQLSERVER数据库- 变量和批处理

本文介绍了SQL Server中变量的使用,包括如何赋值、批量赋值以及在查询语句中的应用。同时,讲解了SQL流程控制语句,如IF...ELSE、WHILE和CASE...END,并给出了具体示例。此外,还提到了WAITFOR语句的用法,用于指定延迟执行的时间。最后,推荐了两篇相关的博客文章作为进一步阅读。
摘要由CSDN通过智能技术生成
        当作学习总结吧!以下的内容很早以前就有人写过。但我还是要再写一下,一是练一下自己写这方面文章的能力,二是对知识点的学习有一下重温和加深。
        SQL语言也跟其他编程语言一样,拥有变量、分支、循环等控制语句。之前我不清楚应该把这些归到哪个名词上,直到前晚我看到有篇文章是在讲SQL语句批处理,所有我就把SQL里的变量、分支、循环等控制语句归到批处理来。在SQL语言里面把变量分为局部变量和全局变量,全局变量又称系统变量。
 
先来看一下局部变量:
        局部变量使用declare关键字给变量声明,语法非常简单:declare @<变量名> <变量类型> [,@<变量名> <变量类型> [.. ]]
        从上面的[,@<变量名> <变量类型> [.. ]]这里我们可以看出他能一次声明多个变量,变量声明后但未赋值前,其值为NULL。对变量的赋值可以使用 set关键字,使用set关键字时对变量的赋值一次只能赋值一个。
         来看一个实例:
declare @name nvarchar(50),@age int
print @name; 
print @age; 
print '----------------'; 
set @name='Jack'
set @age=18 
print @name; 
print @age; 
print '----------------'; 
   
--结果显示: 
   
---------------- 
Jack 
18 
---------------- 

  可以看到在没有赋值前,他输出的是NULL。使用set关键字对变量的赋值一次只能赋值一个,那么怎么对多个变量进行赋值?这时可以使用select关键字

declare @name nvarchar(50),@age int
select @name='Jack',@age=18 
print @name; 
print @age; 
print '----------------'; 

      我们也可以在查询语句里面对这个变量进行赋值例如: select @name=sName from student where sid=1;

再来看一下全局变量

     SQL Server有30多个全局系统变量,但有几个是常用到的,如下SQL语句 

select @@VERSION --查看版本号 
select @@IDENTITY; --返回最后插入的标识值--例如 
USE MySchool 
create table ideTest 
( 
    id int identity(1,1) primary key, 
    idename nvarchar(50), 
) 
insert into ideTest(idename) values('test1'); 
insert into ideTest(idename) values('test2'); 
insert into ideTest(idename) values('test3'); 
ins
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值