iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySql视图触发器存储方法
  • 205
分享到

MySql视图触发器存储方法

2024-04-02 19:04:59 205人浏览 薄情痞子
摘要

这篇文章主要讲解了Mysql视图触发器存储方法,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。视图:  一个临时表被反复使用的时候,对这个临时表起一个别名,方便以后使用,就可以创

这篇文章主要讲解了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);
您可能感兴趣的文档:

--结束END--

本文标题: MySql视图触发器存储方法

本文链接: https://www.lsjlt.com/news/43884.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作