常用SQL语言的类型

SQL分类:
DDL——数据定义语言(CREATE,ALTER,DROP,DECLARE)
DML——数据操作语言(SELECT,DELETE,UPDATE,INSERT)
DCL——数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)


DDL—数据库定义语言:直接提交的。
CREATE:用于创建数据库对象。
DECLARE:除了是创建只在过程中使用的临时表外,DECLARE语句和CREATE语句非常相似。唯一可以被声明的对象是表。并且必须放入用户临时表空间。
DROP:可以删除任何用CREATE(数据库对象)和DECLARE(表)创建的对象。
ALTER:允许修改某些数据库对象的信息。不能修改索引。


DCL—数据控制语言:用来授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据库实行监视等
1.COMMIT : 提交
2.SAVEPOINT : 保存点
3.ROLLBACK:回滚
4.SET TRANSACTION: 设置当前事务的特性,它对后面的事务没有影响.


下面对一些常用的编程语句进行介绍
1、IF…ELSE语句

declare @i as int, @myVar as int ;--声明变量
set @i = 1;
set @myVar = 0;
if @i > 0
  set @myVar = 100;
else
  set @myVar = 10;
  print convert(char(12), @myVar);--输出变量的值

2、BEGIN…END
使用begin…end让 set @myVar = 10;和print语句都属于else部分

 if @i > 0
     set @myVar = 100;
  else
     begin
        set @myVar = 10;
        print convert(char(12), @myVar);--输出@myVar的变量
     end

3、WHILE循环
首先声明3g变量,@myVar1用于累加1-100之间的奇数值,@myVar2用于累加1-100之间的偶数值

 declare @i as int, @myVar1 as int, @myVar2 as int;--声明变量
 set @myVar1 = 0;    --设置变量值
 set @myVar2 = 0;

 while @i < 100  --开始循环
 begin --指定包含在循环的语句
    if @i % 2 <> 0  --判断是否为奇树,<>:不等于
        set @myVar1 = @myVar1 + @i;--累加奇数
    else
        set @myVar2 = @myVar2 + @i;--累加偶数
    set @i = @i + 1;--递增@i
 end --结束循环
 select @myVar1, @myVar2, @i;--显示变量值

4、GOTO语句和标签
GOTO语句用于将执行流更改到标签处,下面使用GOTO语句代替上面的WHILE循环,功能相同

declare @i as int,@myVar1 as int,@myVar2 as int;
set @myVar1 = 0;
set @myVar2 = 0;
set @i =1;

table_loop:--指定标签
  if @i % 2 <> 0  --判断是否为奇树
    set @myVar1 = @myVar1 + @i;--累加奇数
  else
    set @myVar2 = @myVar2 + @i;--累加偶数
  set @i = @i + 1;--递增@i
 if(@i < 100) goto table_loop;--跳到到标签处

 select @myVar1, @myVar2, @i;--显示变量值

5、使用WAITFOR语句
WAITFOR语句用于延迟后面的语句的执行,可以指定延迟的时间长度或者是具体时间

 waitfor delay '00:1:15';--指定延迟的时间长度
 print N'到时间了';

 --另一种形式
 waitfor time '10:02:10'--延迟具体时间
  print N'到时间了';

此语句通常用于并发测试,例如,可以指定在同一个时间执行多个相同的SQL语句

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值