SQL学习笔记(6)之DCL语句和事务

DCL语句(Data Control Language,数据控制语言):主要由grant和revoke关键字完成

(1)grant:MySQL 赋予用户权限命令

语法:grant 权限 on 数据库对象to 用户

eg、

一、grant 普通数据用户,查询、插入、更新、删除 数据库中所有表数据的权利。

  
  
grant select on testdb. * to common_user@ ' % '
grant insert on testdb. * to common_user@ ' % '
grant update on testdb. * to common_user@ ' % '
grant delete on testdb. * to common_user@ ' % '

或者,用一条 MySQL 命令来替代:

  
  
grant select , insert , update , delete on testdb. * to common_user@ ' % '

查看当前用户(自己)权限:

  
  
show grants;

 

查看其他 MySQL 用户权限:

  
  
show grants for dba @localhost ;

(2)revoke:撤销已经赋予给 MySQL 用户权限的权限。

revoke 跟 grant 的语法差不多,只需要把关键字 “to” 换成 “from” 即可:

  
  
grant all on * . * to dba @localhost ;
revoke all on * . * from dba @localhost ;

 

1. grant, revoke 用户权限后,该用户只有重新连接 MySQL 数据库,权限才能生效。

2. 如果想让授权的用户,也可以将这些权限 grant 给其他用户,需要选项 “grant option“

  
  
grant select on testdb. * to dba @localhost with grant option ;


事务控制:主要由commit,roolback和savepoint三个关键字完成。

事务要么成功,要么失败,它是一个不可分割的工作单位;若在执行过程中失败通过回滚可回到最初状态。

 commit TRAN 提交事务;

 roolback TRAN 回滚事务,将发生的都忘记,回到起点;

savepoint:创建一个特定标记符,只允许部分回滚。


view视图:

在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表。逻辑表;

视图包含行和列,就像一个真实的表。视图中的字段就是来自一个或多个数据库中的真实的表中的字段。我们可以向视图添加 SQL 函数、WHERE 以及 JOIN 语句,我们也可以提交数据,就像这些来自于某个单一的表。

注释:数据库的设计和结构不会受到视图中的函数、where 或 join 语句的影响。

SQL CREATE VIEW 语法

CREATE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition


function函数:用于完成一次特定的计算,具有返回值

procedure存储过程:用于完成一次完整的业务处理,没有返回值,但可以通过传出参数将多个值传给调用环境
trigger触发器:相当于一个事件监听器,当数据库发生特定事件后,触发器被触发,完成相应的处理。


上文参考:http://www.cnblogs.com/hcbin/archive/2010/04/23/1718379.html

http://www.w3school.com.cn/sql/sql_view.asp




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值