这篇文章主要讲解了MySql视图触发器存储方法,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。
视图:
一个临时表被反复使用的时候,对这个临时表起一个别名,方便以后使用,就可以创建一个视图,别名就是视图的名称。视图只是一个虚拟的表,其中的数据是动态的从物理表中读出来的,所以物理表的变更回改变视图。
创建:
create view v1 as SQL
例如:create view v1 as select * from student where sid<10
创建后如果使用mysql终端可以看到一个叫v1的表,如果用navicate可以在视图中看到生成了一个v1的视图
再次使用时,可以直接使用查询表的方式。例如:select * from v1
修改:只能修改视图中的sql语句
alter view 视图名称 as sql
删除:
drop view 视图名称
触发器:
当对某张表做增删改查的时候(之前后者之后),就可以使用触发器自定义关联行为。
修改sql语句中的终止符号 delimiter
before after 之前之后
-- delimiter //
-- before或者after定义操作(insert或其他)之前或之后的操作
-- on 代表那张表发生操作后引发触发器操作
-- CREATE TRIGGER t1 BEFORE INSERT on teacher for EACH row
-- BEGIN
-- INSERT into course(cname) VALUES('奥特曼');
-- END //
-- delimiter ;
-- insert into teacher(tname) VALUES('triggertest111')
--
-- delimiter //
-- CREATE TRIGGER t1 BEFORE INSERT on student for EACH row
-- BEGIN
-- INSERT into teacher(tname) VALUES('奥特曼');
-- END //
-- delimiter ;
-- insert into student(gender,sname,class_id) VALUES('男','1小刚111',3);
-- 删除触发器
-- drop trigger t1;
-- NEW 和 OLD 代指新老数据 使其数据一致
-- delimiter //
-- create TRIGGER t1 BEFORE insert on student for each row
-- BEGIN
--这里的new 指定的是新插入的数据,old通常用在delete上
-- insert into teacher(tname) VALUES(NEW.sname);
-- end //
-- delimiter ;
insert into student(gender,sname,class_id) VALUES('男','蓝色的大螃蟹',3);
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
软考中级精品资料免费领
- 历年真题答案解析
- 备考技巧名师总结
- 高频考点精准押题
- 资料下载
- 历年真题
193.9 KB下载数265
191.63 KB下载数245
143.91 KB下载数1142
183.71 KB下载数642
644.84 KB下载数2755