MySQL学习笔记 第九讲:视图、事务、触发器

第九讲:视图、事务、触发器

 

1.视图(主要根据查询而生成)

       ①创建视图:

           create view view_name as select statement;

       ②视图就是一个数据库中的虚拟表

       ③视图本身没有结构和数据,只是通过执行相应select语句获得数据

2.视图管理

       ①删除视图:drop view [if exists] view_name;

       ②修改视图:alter view v_name as select statement;

       ③修改视图结构:修改视图内字段名称

           例:alter view v_name(v1,v2) as select id,t_name from info_teacher;

           通过视图可以使复杂的业务逻辑简单地完成,通常,视图完成的逻辑都是相对来说比较基础的逻辑;

       ④视图的执行过程

             存在两种执行算法:

                ⅰ.merge:合并的执行方式

                   每当执行的时候,先将我们的视图的sql语句与外部查询视图的sql语句混合在一起,最终执行。

                   视图算法:一个视图是在什么时候执行,依据哪些方式执行;

                ⅱ.temptable:临时表模式

                     每当查询的时候,将视图所使用select语句生成一个结果的临时表,再在当前的临时表内查询;

                 注:尽量使用视图完成读操作

                        如果使用视图,则对视图的修改就是对真实表的修改

                        删除视图,不会销毁实体表的的数据

                        若一个数据多个应用,应针对每个应用,采取不同的视图接口;

3.事务

        一组sql语句操作单元,组内所有sql语句完成一个业务;

          ①如何处理事务

                在一组操作之前,设计一个记号(备份点);

          ②实现:利用innodb存储引擎的事务日志功能

          ③常见的事务指令

               成功:commit

               失败:rollback

               开启事务:start transaction;关闭自助提交,如果事务结束了成或败,都会将自动提交机制回到start时状态

          ④事务特点:原子性、一致性、隔离性、持久性

4.触发器

          在某个表上进行监听,监听该表上的动作、支持的事件(增、删、改),一旦监听到就会触发一段使用sql编写的程序,由事件和事件发生时执行的动作,就组成了一个触发器;

          ①定义:触发程序是与表有关的命名数据库对象,当表上出现特定事件时,将激活该对象;

          ②创建触发器

               create trigger name 事件和动作

               表的事件:insert插入之前,插入之后

                                 update更新之前,更新之后

                                 delete删除之前,删除之后

                                 时机(前后) before after 和事件(增、删、改);

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值