1、MySQL程序设计程序设计第第6章章 MySQL高级特性高级特性6.1 视图6.2 游标6.3 触发器MySQL程序设计程序设计 创建视图CREATE ALGORITHM=UNDEFINED|MERGE|TEMPTABLE VIEW 视图名(属性清单)AS SELECT 语句 WITH CASCADED|LOCAL CHECK OPTION;CREATE VIEW user_view AS SELECT id,name FROM user WHERE id=1;6 6.1 .1 视图视图第6章 MySQL高级特性MySQL程序设计程序设计 修改视图6 6.1 .1 视图视图第6章 MySQL高
2、级特性MySQL程序设计程序设计 更新视图6 6.1 .1 视图视图第6章 MySQL高级特性MySQL程序设计程序设计 删除视图和数据 删除视图 DROP VIEW IF EXISTS work_view;DROP VIEW work_view;删除视图数据 DELETE FROM work_view;6 6.1 .1 视图视图第6章 MySQL高级特性MySQL程序设计程序设计 创建游标6.2 6.2 游标游标第6章 MySQL高级特性MySQL程序设计程序设计 打开游标 OPEN cursor1;6.2 6.2 游标游标第6章 MySQL高级特性MySQL程序设计程序设计 使用游标 FE
3、TCH cursor1 INTO c_name6.2 6.2 游标游标第6章 MySQL高级特性MySQL程序设计程序设计 关闭游标 CLOSE cursor1;6.2 6.2 游标游标第6章 MySQL高级特性MySQL程序设计程序设计 游标的WHILE循环 6.2 6.2 游标游标第6章 MySQL高级特性MySQL程序设计程序设计 游标的REPEAT循环 6.2 6.2 游标游标第6章 MySQL高级特性MySQL程序设计程序设计 游标的LOOP循环 6.2 6.2 游标游标第6章 MySQL高级特性MySQL程序设计程序设计 创建触发器 6.3 6.3 触发器触发器第6章 MySQL高
4、级特性MySQL程序设计程序设计 NEW和OLD关键字(1)对于INSERT型触发器,NEW关键字用来表示将要(BEFORE)或已经(AFTER)插入的新数据;(2)对于UPDATE型触发器,OLD关键字用来表示将要(BEFORE)或已经(AFTER)被修改的原数据,NEW用来表示将要(BEFORE)或已经(AFTER)修改为的新数据;(3)对于DELETE 型触发器,OLD 用来表示将要(BEFORE)或已经(AFTER)被删除的原数据;(4)OLD 是只读的,而 NEW 则可以在触发器中使用 SET 赋值;(5)使用方法:NEW.columnName(columnName 列名);6.3
5、6.3 触发器触发器第6章 MySQL高级特性MySQL程序设计程序设计 查看触发器 6.3 6.3 查看和删除触发器查看和删除触发器第6章 MySQL高级特性MySQL程序设计程序设计 删除触发器 6.3 6.3 查看和删除触发器查看和删除触发器第6章 MySQL高级特性MySQL程序设计程序设计 INSERT型触发器 INSERT型触发器分为插入之前(BEFORE)触发器和插入之后(AFTER)触发器,NEW关键字用来表示将要(BEFORE)或已经(AFTER)插入的新数据;6.3 6.3 查看和删除触发器查看和删除触发器第6章 MySQL高级特性MySQL程序设计程序设计 UPDATE型
6、触发器 UPDATE型触发器分为更新之前(BEFORE)触发器和更新之后(AFTER)触发器,对于UPDATE型触发器,OLD关键字用来表示将要(BEFORE)或已经(AFTER)被修改的原数据,NEW用来表示将要(BEFORE)或已经(AFTER)修改为的新数据;6.3 6.3 查看和删除触发器查看和删除触发器第6章 MySQL高级特性MySQL程序设计程序设计 DELETE型触发器 DELETE型触发器分为删除之前(BEFORE)触发器和删除之后(AFTER)触发器,对于DELETE 型触发器,OLD 用来表示将要(BEFORE)或已经(AFTER)被删除的原数据;6.3 6.3 查看和删除触发器查看和删除触发器第6章 MySQL高级特性MySQL程序设计程序设计 视图 游标 触发器总结总结第6章 MySQL高级特性MySQL程序设计程序设计