变量分为:
->局部变量:
•局部变量必须以标记@作为前缀 ,如@Age int
•局部变量:先声明,再赋值
1 -- 语法:声明一个变量,然后赋值,打印出来
2 -- 第一步
3 declare @变量名 nvarchar(10);
4 -- 第二步
5 set @变量名 = '介似一个变量';
6 -- 第三步
7 select @变量名 as name;
1 --  在赋值的时候可以使用"select查询"
2 -- select 变量=字段 from ...
3 use TestDataBase;
4 declare @count int;
5 select @count = COUNT(*) from Student;
6 select @count as 总数;
1 -- SQL Server 2008 开始引入了声明变量即可赋值的语法
2 declare @n nvarchar(10) = '一个例子';
3 select @n;
->全局变量(系统变量):
•全局变量必须以标记@@作为前缀,如@@version
•全局变量由系统定义和维护,我们只能读取,不能修改全局变量的值
 
 
变量
含义
@@ERROR
最后一个T-SQL错误的错误号
@@IDENTITY
最后一次插入的标识值
@@LANGUAGE
当前使用的语言的名称
@@MAX_CONNECTIONS
可以创建的同时连接的最大数
@@ROWCOUNT
受上一个SQL语句影响的行数
@@SERVERNAME
本地服务器的名称
@@TRANSCOUNT
当前连接打开的事务数
@@VERSION
SQL Server的版本信息

在数据库中流程控制有选择与循环
选择的语法:

IF(条件表达式)
  BEGIN --相当于C#里的{
    语句1

  ……
  END --相当于C#里的}
ELSE
 BEGIN
    语句1
    ……
  END
 1 /*
2 if(bool表达式)
3 begin
4 表达式为真的时候执行
5 end
6 else
7 begin
8 表达式为假的时候执行
9 end
10 */
11
12 declare @num int;
13 set @num = 11;
14 if(@num > 10)
15 begin
16 select '数字大于10';
17 end
18 else
19 begin
20 select '数字小于等于10';
21 end
22 go
循环的语法:
 
WHILE(条件表达式)
  BEGIN --相当于C#里的{
    语句
    ……
continue
    BREAK
  END --相当于C#里的}
 
 
 1 -- 循环的语法
2 /*
3 while(bool表达式)
4 begin
5 循环体
6 end
7 */
8
9 declare @i int;
10 declare @sum int;
11 set @i = 0;
12 set @sum = 0;
13
14 while(@i <= 100)
15 begin
16 set @sum = @sum + @i;
17 set @i = @i + 1;
18 end
19
20 select @sum;
21 go
22
23 -- 求1到100中所有偶数的和
24
25 declare @i int;
26 declare @sum int;
27 set @i = 0;
28 set @sum = 0;
29 while(@i <= 100)
30 begin
31 if(@i % 2 = 0)
32 begin
33 set @sum = @sum + @i;
34 end
35 set @i = @i + 1;
36 end
37 select @sum;

break,continue用法:

SQLserver中的存储过程的更多相关文章

  1. sqlserver中的存储过程 函数 事物 索引及视图

                                           存储过程和函数具体的区别: 核心提示:本质上没区别.只是函数有限制只能返回一个标量,而存储过程可以返回多个.并且函数是可以 ...

  2. SQLServer中系统存储过程sp_spaceused

    sp_spaceused 执行sp_spaceused存储过程的时候可以不用带参数,直接执行,或者exec sp_spaceused都可以,返回两个结果集: 列名 数据类型 描述 database_n ...

  3. 调用sqlserver中的存储过程

    1.存储过程名 string strSQL = "usp_GetUnReturnPassports"; 2.创建数据库对象 database Database db = Datab ...

  4. SQLServer 中的存储过程中判断临时表是否存在,存在则删除临时表

    IF OBJECT_ID('TEMPDB..#BCROSSREFERENCE ') IS NOT NULL DROP TABLE #BCROSSREFERENCE IF OBJECT_ID('TEMP ...

  5. sqlserver中查询存储过程中的字符串

    select name from sysobjects o, syscomments s where o.id = s.id and text like '%querytext%' and o.xty ...

  6. Sqlserver中存储过程,触发器,自定义函数(二)

    Sqlserver中存储过程,触发器,自定义函数: 自定义函数:1.函数类型:2.函数的参数和返回值: 1.函数类型:标量值函数,返回的是一个标量值表值函数:内联表值函数:多语句表值函数. 标量值函数 ...

  7. Sqlserver中存储过程,触发器,自定义函数(一)

    Sqlserver中存储过程,触发器,自定义函数 1.存储过程有关内容存储过程的定义:存储过程的分类:存储过程的创建,修改,执行:存储过程中参数的传递,返回与接收:存储过程的返回值:存储过程使用游标. ...

  8. Sqlserver中存储过程,触发器,自定义函数

    Sqlserver中存储过程,触发器,自定义函数: 1. 触发器:是针对数据库表或数据库的特殊存储过程,在某些行为发生的时候就会被激活 触发器的分类: DML触发器:发生在数据操作语言执行时触发执行的 ...

  9. SqlServer中存储过程中将Exec的执行结果赋值给变量输出

    原文 SqlServer中存储过程中将Exec的执行结果赋值给变量输出 背景: 遇到这样一种情况:动态向存储过程中传入表名和表的某些属性(这里用到的是主键ID),然后利用这两个变量查出一条数据的某些字 ...

  10. SqlServer中存储过程 returnC#代码处理以及对应的MySQL如何改写

    一.SqlServer 中 1. 创建表 create table testuser( id int, --primary key, names ), address ), paw ) ) 2.创建存 ...

随机推荐

  1. uniapp关于uni.getUserProfile的使用

    点击查看代码 <button @click="getMy" data-eventsync="true">获取信息</button> le ...

  2. python小功能

    django实现将linux目录和文件名列出来 def index(request): obj=models.USER.objects.all() fileroot = 'd:\machangwei' ...

  3. 拼接sql 参数化 where userId in(@userIds)的问题

    这里@userIds 如果 写成101,202,301翻译后的sql的where部分会是: where userId in('101,202,301'): 而不是期待的: where userId i ...

  4. BigDecimal类的基本使用

    概述 java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算.双精度浮点型变量double可以处理16位有效数.在实际应用中,需要对更大或者更小的 ...

  5. 【WPF】 BasedOn的用法

    BasedOn 用于样式的继承. 这里的已经继承了一个样式 此时,我们想在Resource中让他附加新的样式,但是这样不成功 修改如下: 去掉了之前的样式选择 我们使用BasedOn让其叠加样式

  6. Wpf虚拟屏幕键盘

    在Wpf使用虚拟键盘有基于osk和tabtip,后者只能在win8和win10之后电脑使用,而且两者在wpf中调用时都必须提升为管理员权限,实际应用中还是不方便. 今天介绍的方法是使用第三方库oskl ...

  7. Kubernetes1.16安装[kubadm方式]

    Kubernetes 安装手册(非高可用版) 集群信息 1. 节点规划 部署k8s集群的节点按照用途可以划分为如下2类角色: master:集群的master节点,集群的初始化节点,基础配置不低于2C ...

  8. [吐槽]困扰了1周的API调用失败问题的原因是使用了加密DNS

    参考API的官方文档使用postman测试了一下,导入了百度提供的postman环境配置文件,粘贴提供的预处理代码后直接发起请求,响应里提示 "signature is empty" ...

  9. WEB攻防-代码特性

    WEB攻防-代码特性 目录 WEB攻防-代码特性 ASP 如何判断网站搭建是否是asp ASP常见的搭配组合 ASP语言的漏洞点(从哪一方面入手) ASP-数据库-MDB下载 ASP-数据库-ASP后 ...

  10. react移动端组件antd-mobile

    使用react移动端组件antd-mobile完成底部导航功能实现. 官网:https://mobile.ant.design/docs/react/introduce-cn antd-mobile ...