SQL数据库语句大全

来源:互联网 发布:mac版导入铃声 编辑:程序博客网 时间:2024/06/06 02:11
--语句功能


--数据操作
  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
  declare @x int @y int @c int
  select @x = 1 @y=1
  while @x < 3
  begin
  print @x --打印变量x 的值
  while @y < 3
  begin
  select @c = 100*@x + @y print @c --打印变量c 的值
  select @y = @y + 1
  end
  select @x = @x + 1
  select @y = 1 
  end
    
--WAITFOR  
  --例 
  等待1 小时2 分零3 秒后才执行SELECT语句
  waitfor delay ‟01:02:03‟
  select * from employee
  --例 
  等到晚上11 点零8 分后才执行SELECT语句
  waitfor time ‟23:08:00‟
  select * from employee
      
***SELECT***
   select *(列名) from table_name(表名) where column_name operator value
   ex:(宿主)
   select * from stock_information where stockid = str(nid)
   stockname = 'str_name'
   stockname like '% find this %'
   stockname like '[a-zA-Z]%' --------- ([]指定值的范围)
   stockname like '[^F-M]%' --------- (^排除指定范围)
   --------- 只能在使用like关键字的where子句中使用通配符)
   or stockpath = 'stock_path'
   or stocknumber < 1000 
   and stockindex = 24
   not stock*** = 'man'
   stocknumber between 20 and 100
   stocknumber in(10,20,30)
0 0
原创粉丝点击