常用 SQL 语句大全

来源:互联网 发布:蜂窝移动数据怎么设置 编辑:程序博客网 时间:2024/05/01 13:17

--数据操作

  Select --从数据库表中检索数据行和列

  Insert --向数据库表添加新数据行

  Delete --从数据库表中删除数据行

  Update --更新数据库表中的数据

  --数据定义

  Create TABLE --创建一个数据库表

  Drop TABLE --从数据库中删除表

  Alter TABLE --修改数据库表结构

  Create VIEW --创建一个视图

  Drop VIEW --从数据库中删除视图

  Create INDEX --为数据库表创建一个索引

  Drop INDEX --从数据库中删除索引

  Create PROCEDURE --创建一个存储过程

  Drop PROCEDURE --从数据库中删除存储过程

  Create TRIGGER --创建一个触发器

  Drop TRIGGER --从数据库中删除触发器

  Create SCHEMA --向数据库添加一个新模式

  Drop SCHEMA --从数据库中删除一个模式

  Create DOMAIN --创建一个数据值域

  Alter DOMAIN --改变域定义

  Drop DOMAIN --从数据库中删除一个域

--数据控制

  GRANT --授予用户访问权限

  DENY --拒绝用户访问

  REVOKE --解除用户访问权限

  --事务控制

  COMMIT --结束当前事务

  ROLLBACK --中止当前事务

  SET TRANSACTION --定义当前事务数据访问特征

  --程序化SQL

  DECLARE --为查询设定游标

  EXPLAN --为查询描述数据访问计划

  OPEN --检索查询结果打开一个游标

  FETCH --检索一行查询结果

  CLOSE --关闭游标

  PREPARE --为动态执行准备SQL 语句

  EXECUTE --动态地执行SQL 语句

  DESCRIBE --描述准备好的查询

  ---局部变量

  declare @id char(10)

  --set @id = '10010001'

  select @id = '10010001'

---全局变量

  ---必须以@@开头

  --IF ELSE  

declare @x int @y int @z int
  select @x = 1 @y = 2 @z=3
  if @x > @y
  print 'x > y' --打印字符串'x > y'
  else if @y > @z
  print 'y > z'
  else print 'z > y'

  --CASE  

use pangu
  update employee
  set e_wage =
  case
  when job_level = ’1’ then e_wage*1.08
  when job_level = ’2’ then e_wage*1.07
  when job_level = ’3’ then e_wage*1.06
  else e_wage*1.05
  end

  --WHILE CONTINUE BREAK