当前位置:首页 > 系统运维 > 正文内容

MySQL 触发器,存储过程实例演示

a8116255316年前 (2010-05-26)系统运维9

以下的文章主要是介绍MySQL 触发器,存储过程以及函数与视图的实例演示过程,以下就是触发器,存储过程以及函数与视图的具体操作方案的描述,希望在你今后的学习中会对你有所帮助。

MySQL 触发器,存储过程以及函数与视图的实例演示:

0.test数据库有userinfo用户信息表 和userinfolog用户信息日志表

1.建立一个userinfo表新增记录时的MySQL 触发器 将新增日志加入到userinfolog

2.建立一个向userinfo表新增记录的存储过程

3.根据userinfo表的出生日期字段 我们将建立一个简单算得年龄的自定义函数

4.创建一个userinfo的视图 调用年龄函数

0.准备相关表

MySQL> use test;  MySQL> create table userinfo(userid int,username varchar(10),userbirthday date);  MySQL> create table userinfolog(logtime datetime,loginfo varchar(100));  MySQL> describe userinfo; 

1.MySQL 触发器

MySQL> delimiter |  MySQL> create trigger beforeinsertuserinfo  -> before insert on userinfo  -> for each row begin  -> insert into userinfolog values(now(),CONCAT(new.userid,new.username));  -> end;  -> |  MySQL> delimiter ;  MySQL> show triggers; 

2.存储过程

MySQL> delimiter //  MySQL> create procedure spinsertuserinfo(  -> puserid int,pusername varchar(10)  -> ,puserbirthday date  -> )  -> begin  -> insert into userinfo values(puserid,pusername,puserbirthday);  -> end;  -> //  MySQL> show procedure status like 'spinsertuserinfo';  MySQL> call spinsertuserinfo(1,'zhangsan',current_date);  MySQL> select * from userinfo; 

3.自定义函数

MySQL> update userinfo  -> set userbirthday='2000.01.01' -> where userid='1';  MySQL> drop function if exists fngetage;  MySQL> delimiter //  MySQL> create function fngetage(pbirthday date)  -> returns integer  -> begin  -> return year(now()) - year(pbirthday);  -> end  -> // 

4.视图

MySQL> create view viewuserinfo  -> as select * ,fngetage(userbirthday) as userage from userinfo;  MySQL> select * from viewuserinfo; 

清除日志记录

MySQL> truncate table userinfolog;  MySQL> delete from userinfolog; 

上面说了这么多内容,是关于对MySQL 触发器 存储过程 函数 视图的介绍,不知道各位对MySQL的认识是不是更上一层楼了,时时关注ITjs,学习最新Mysql技术。

扫描二维码推送至手机访问。

版权声明:本文由2345好导航站长资讯发布,如需转载请注明出处。

本文链接:http://www.2345hao.cn/blog/index.php/post/20665.html

分享给朋友:

“MySQL 触发器,存储过程实例演示” 的相关文章

windows 7系统的电脑发出嘟嘟嘟的声音该怎么解决?

windows 7系统的电脑发出嘟嘟嘟的声音该怎么解决?

在某些电脑中,机器内部蜂鸣器与系统的声音输出方案是相关联的,这样一来会导致当系统输出声音时,即使电脑没有连接外部音响或耳机,也会通过内置蜂鸣器发出“嘟嘟哔哔”的声音。这个问题主要出现在Windows 7电脑中,假如你的电脑恰好遇到了这样的问题,可参考下面的方法来解决: 1、在桌面“计算机”图标上右...

各个都很实用:windows 7系统电脑日常小技巧

各个都很实用:windows 7系统电脑日常小技巧

在使用Windows 7的时候很多用户对于系统的很多功能并不是很了解,也正是因为这样的不了解导致很多用户在使用Win 之后并不能体验Windows 7的功能便携和强大功能,导致很多用户对于Windows 7的认识还是比较模糊,不过为了让更多的朋友了解Windows 7的特点和便携应用,今天就为大家汇...

解决windows 7无法将程序锁定到任务栏或附到开始菜单的方法

解决windows 7无法将程序锁定到任务栏或附到开始菜单的方法

出现该问题的原因是由于使用第三方优化软件消除快捷方式的小箭头引起的。 1、在开始搜索框中键入“regedit”,按回车键打开注册表编辑器。 2、依次定位到以下分支:HKEY_CLASSES_ROOTlnkfile。 3、在lnkfile项上鼠标右键单击“新建”——“字符串值”。...

windows 7如何给c盘扩容 图解windows 7 64位系统C盘扩容方法(自

windows 7如何给c盘扩容 图解windows 7 64位系统C盘扩容方法(自

用Windows 7久了,C盘越来越大,原来50G的空间基本用完了,又不想重装系统,就想着能不能直接扩容。 在网上搜了半天,看了无数教程,都写得不明不白的,结合了几篇教程才终于搞明白。 重新总结一下,方便有需要的人。 所用软件: http://www.jb51.net/softs/57895...

windows 7如何创建拨号连接

windows 7如何创建拨号连接

一、打开控制面板,选择“网络和共享中心”; 二、在网络和共享中心中选择“设置新的连接或网络”; 三、选择连接到Internet; 四、选择“仍要设置新的连接”; 五、选择“宽带PPPoE ”; 六、输入对应的宽带帐号及密码,点击连接即可;...

微软为windows 7用户重新发布补丁KB2952664 帮助提升Win10升级体

微软为windows 7用户重新发布补丁KB2952664 帮助提升Win10升级体

1月13日消息,微软今天为Windows 7(SP1)用户重新推送了编号为KB2952664的更新补丁,该更新在官方KB知识库中的描述为“Windows 7系统升级兼容性更新”,用于帮助微软改进当前版本系统,提升升级到最新版Win10系统的体验。 这项更新还用于在系统中显示Windows10更新提...