• Transact-sal程序设计


    局部变量声明语法:

    DECLARE @variable_name datatype

          [,@variable_name datatype]

          ......

    变量赋值:

    SET @variable_name=expression

    全局变量:是SQL Server 预先声明并负责维护的变量。用户不能随意建立全局变量,也不能用SET语句来修改全部变量的值,全局变量的变量名均已@@开头

    30多个全局变量,份两类

    1、与当前SQL Server连接或与当前处理有关的全局变量

    @@rowcount 表示最近一个sql语句影响的行数

    @@error 标识最近执行的操作的错误状态

    2、与整个系统有关的变量

    @@version sql版本信息

    @@cpu_busy 标识SQL Server 启动以来所占用的cpu运行时间。

    常用的全局变量:

    @@transtate        存储事务嵌套的层次

    @@tranChained    存储当前事务的模式

    @@servername    SQL Server服务器的名称

    @@spid        当前传递的ID号

    @@identity      存储上一次INSERT操作所使用的identity值

    @@nestlevel      存储过程或触发器的嵌套层次

    @@fetch_status    存储上一条fetch语句的状态

    变量

    变量是一种可以存储数据值的对象,变量可以分为局部变量和全局变量。
    1、局部变量

    局部变量是用户自定义的变量,它的作用范围仅在程序内部,

    使用:以@开头,且必须先使用DECLARE命令说明后才可以使用

    声明变量:

    DECLARE  @变量名 数据类型

        DECLARE @id char (10)   --声明一个长度为个字符的变量id
        DECLARE @age int   --声明一个存放职员年龄的整型变量

    赋值:

    SET @变量名=值:用于普通的赋值

    SELECT @变量名=值:用于从表中查询数据并赋值

    使用变量:


    2、全局变量

    是SQL Server系统内部使用的变量,由系统定义和维护,我们只能使用,不能修改。

    引用全局变量时必须使用@@开头

    常用的全局变量



    两种变量的区别



    输出语句

    有两种输出语句

    PRINT 变量表达式 :以消息的形式进行显示

    SELECT 变量或表达式:以表格(选择集)的形式进行显示

    使用convert函数



    逻辑控制语句
    IF-ELSE

    语法:

        IF<条件表达式>
        BEGIN
        <命令行或程序块>
        END
        [ELSE[条件表达式]
        BEGIN
        <命令行或程序块>]
        END


     WHILE…CONTINUE….BREAK

    语法:

        WHILE<条件表达式>
        BEGIN
        <命令行或程序块>
        [BREAK]
        [CONTINUE]
        [命令行或程序块]
        END

    CASE(简单型)

    语法:

    CASE input_expression

      WHEN when_expression THEN result_expression

          [....n]

    [

      ELSE else_result_expression

    ]

    END

    说明: input为条件表达式,when用于与input进行比较,值相等执行result,都不相等执行else


    CASE(搜索型)

    语法:

        CASE
        WHEN<条件表达式1>THEN<运算式结果1>
        WHEN<条件表达式2>THEN<运算式结果2>
        [ELSE<运算式>]
        END

    说明:首先测试WHEN后面的布尔表达式,如果值为真,则执行对应的运算式,否则进行下一个布尔表达式,如果没有值为真,则执行else运算式


    批处理

    GO关键字标志这批处理的结束

    如果批处理语句中出现编译错误(如语法错误)可使执行计划无法编译。因此未执行批处理中的任何语句。
    批处理可以提高语句执行的效率。
    ————————————————
    版权声明:本文为CSDN博主「Angel Devil」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/qq3178124798/article/details/80180131

  • 相关阅读:
    Bluetooth architecture (HCI/L2CAP)
    堆栈
    Inside the C++ Object Model 深度探索对象模型 57
    Android音乐播放器
    (一)开发板系统安装
    html5的canvas写一个简单的画板程序
    C++ 获取日历时间
    Incremental Differential vs. Incremental Cumulative Backups
    BCB安装控件出现Unresolved external '__fastcall Outline::TCustomOutline
    Windows 环境下配置 Oracle 11gR2 Data Guard 手记
  • 原文地址:https://www.cnblogs.com/bedfly/p/12463689.html
Copyright © 2020-2023  润新知