数据库编程语言

批处理:go

    建库,建表语句,存储过程,视图等必须在句末加go
批处理中的错误:

    1、如果批处理语句中出现编译错误,可使执行计划无法编译。
    因此未执行批处理中的任何语句

    2、批处理处理中的语句,出现错误,不同批次的语句执行结
    果不受影响,因为他们已经完成。

局部变量:
    局部变量的定义需要用 @ 作为前缀,如 @ age
    
    局部变量的使用是先声明后使用
    
    局部变量的定义只在定义他的局部范围内有效

全局变量
    
    全局变量必须一 @ @ 作为前缀 如:@ @ version
    
    全局变量是由系统定义和维护,我们只能读取,不能修改
    
    全局变量在整个sql环境下都可以被访问或者调用

局部变量的定义:

    declare @name char(20)

赋值
    
    set @name='老王'
    set @变量名 =值:用于普通的赋值    

    select @name='老王'
    select @变量名=值:用于从表中查询数据并赋值
    但是用select赋值必须确保筛选出的记录只有一条,否则输出为最后一条

例:
    declare @name char(20)
    --set @name='老周'
    select @name=stuname from stuinfo order by stuid desc
    print @@error  -----错误代号
    print @name

or
    用select输出:
    select * from stuinfo where stuid=@sid=@sid-1 or stuid=@sid+1

输出语句:
    
    print 变量或表达式:以消息形式进行显示
    
    select 变量或表达式:以表格(选择集)形式进行显示

convert:数据类型转换函数

    print '当前函数值:'+convert(varchar(20),@@identity)

    convert(数据类型,变量名)

if-else逻辑控制语句

    if(条件)
        begin
        语句1
        语句2
        ......
        end
    else
        begin
        语句1
        语句2
        ......
        end

case-end多分支语句

    case
      when 条件1 then 结果1
      when 条件2 then 结果2
      ......
      else 其他结果
    end

例:
    select stuname as 姓名,成绩=case
        when score>=90 when 'A'
        when score>=80 when 'B'
        when score>=70 when 'C'
        when score>=60 when 'D'
        else 'E'
    end
    from stuinfo,stumarks where
    stuinfo.stuid=stuimarks.stuid and subject='sql'

while...continue...break语句

    while
      begin
          语句1
          语句2
          ......
          break
      end
例:
    declare @mark int,@ markid int
    select @mark=score,@markid=stumarkno fo stumarks where subject='html'
    while @mark<90
    begin
       update stumarks set score =@mark+1 where stumarksno=@markid
       select @mark=score,@maarkid=stumarksno from stumarks where
       subject='html'
    end

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值