变量分为:
->局部变量:
•局部变量必须以标记@作为前缀 ,如@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. 【WebForms王者归来】在 ASP.NET Core 中运行 WebForms 业务代码,99%相似度!

    1. 先说结论 我们为 ASP.NET Core 带来了全新的 WebForms 开发模式,可以让 20 年前的 WebForms 业务代码在最新的 ASP.NET Core 框架中运行,代码相似度9 ...

  2. console小知识

    console.log(JSON.stringify(object,null,2));

  3. AIRIOT物联网低代码平台如何配置MQTT驱动?

    MQTT驱动配置简介 MQTT全称为消息队列遥测传输(英语:Message Queuing Telemetry Transport),是ISO 标准(ISO/IEC PRF 20922)下基于发布 ( ...

  4. 日常Bug排查-偶发性读数据不一致

    日常Bug排查-偶发性读数据不一致 前言 日常Bug排查系列都是一些简单Bug的排查.笔者将在这里介绍一些排查Bug的简单技巧,同时顺便积累素材. Bug现场 业务场景 先描述这个问题出现的业务场景. ...

  5. 使用Docker快速安装Redis

    1.使用docker命令下一个redis的镜像 docker pull redis 2.创建 redis 的 data 目录和 conf 目录 1. cd /home/fengsir/redis 2. ...

  6. MySQL学习笔记-函数

    MySQL-常用函数 select {函数}({参数}); select是查询用的,用来展示函数返回值. 一. 字符串函数 常用的字符串函数: 1. concat 拼接 select concat(' ...

  7. 《python核心编程《第二版》》笔记章节索引

    本文章作为我的其它一系列关于<python核心编程<第二版>>的笔记的文章索引. 第一章:Python-快速入门:https://www.cnblogs.com/mrlayfo ...

  8. vue带有参数的路由跳转 动态路由

    先定义好路由在router文件下面创建一个新的文件夹里面写上自己定义的路由 export default {   path: '/detail/:id',   component: () =>  ...

  9. Linux扩展篇-shell编程(十一)- shell编程工具-VS Code

    根据个人多年工作经验,shell没有自己专用的IDE,使用vim开发,对于新手而言不太友好,那如何高效快速书写shell脚本?合适的工具就显得尤为重要,本人比较推荐的就是VS Code.里面有比较成熟 ...

  10. Semantic Kernel入门系列:通过依赖注入管理对象和插件

    前言 本章讲一下在Semantic Kernel中使用DependencyInject(依赖注入),在之前的章节我们都是通过手动创建Kernel对象来完成框架的初始化工作,今天我们用依赖注入的方式来实 ...