妙用触发器有效的管理 MySQL数据库

2016-01-29 14:49 5 1 收藏

妙用触发器有效的管理 MySQL数据库,妙用触发器有效的管理 MySQL数据库

【 tulaoshi.com - MySQL 】

在SQL中,名词触发器指“在数据库中为响应一个特殊表格中的某些事件而自动执行的程序代码。”(Wikipedia)说得简单一些,它是在一个特殊的数据库事件,如INSERT或DELETE发生时,自动激活的一段代码。触发器可方便地用于日志记录、对单个表格到其他链接式表格进行自动的“层叠式”更改、或保证对表格关系进行自动更新。当一个新整数值增加到数据库域中时,自动更新运行的总数的代码段是一个触发器。自动记录对一个特殊数据库表格所作更改的SQL命令块也是一个触发器实例。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/mysql/)

触发器是MySQL 5.x的新功能,随着5.x代码树新版本的出现,这一功能也逐渐得到改善。在本文中,我将简单介绍如何定义并使用触发器,查看触发器状态,并如何在使用完毕后删除触发器。我还将为你展示一个触发器在现实世界中的应用实例,并检验它对数据库记录的改变。

一个简单实例

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/mysql/)

通过简单(虽然是人为的)实例来说明是了解MySQL触发器应用的最佳办法。首先我们建立两个单域的表格。一个表格中为姓名列表(表格名:data),另一个表格中是所插入字符的字符数(表格名:chars)。我希望在data表格中定义一个触发器,每次在其中插入一个新姓名时,chars表格中运行的总数就会根据新插入记录的字符数目进行自动更新。

mysql CREATE TABLE data (name VARCHAR(255));Query OK, 0 rows affected (0.09 sec)mysql CREATE TABLE chars (count INT(10));Query OK, 0 rows affected (0.07 sec)mysql INSERT INTO chars (count) VALUES (0);Query OK, 1 row affected (0.00 sec)mysql CREATE TRIGGER t1 AFTER INSERT ONdata FOR EACH ROW UPDATE chars SET count = count + CHAR_LENGTH(NEW.name);Query OK, 0 rows affected (0.01 sec)

来源:http://www.tulaoshi.com/n/20160129/1494330.html

延伸阅读
Conventions and Styles约定和编程风格 每次我想要演示实际代码时,我会对mysql客户端的屏幕就出现的代码进行调整,将字体改成Courier,使他们看起来与普通文本不一样(让大家区别程序代码和正文)。在这里举个例子: mysql DROP FUNCTION f; Query OK, 0 rows affected (0.00 sec) 如果实例比较大,则需要在某些行和段落间加注...
添加,删除或修改数据库的对象,一旦误操作,可能会导致大麻烦,需要一个数据库管理员或开发人员对相关可能受影响的实体进行代码的重写。 为了在数据库结构发生变动而出现问题时,能够跟踪问题,定位问题的根源,我们可以利用DDL触发器来记录类似“用户建立表”这种变化的操作,这样可以大大减轻跟踪和定位数据库模式的变化的繁琐程...
phpMyBackupPro 是一个一个专业的MySql备份工具。可以备份多服务器、多数据库,可以将数据备份到ftp或email,可以自动备份、可以设置备份的计划任务,可以还原数据库、在线执行SQL语句, 生成UTF-8格式的文档。 phpMyBackupPro简介 主要特点: 1.可以选择备份一个或几个数据库,并可以选择是只备份表格结构还是包含数据。 ...
MySQL从5.0.2版开始引入触发器,触发器就是一个已命名的数据库对象,这个对象和某张表 相关,而且当这张表发生某种特定事件后,触发器将被激活执行相应的动作,触发器允许这 些动作在这张表中的一行或多行的数据被操作的前后执行。在流行业务系统的处理过程中,开发和管理人员可以用触发器来实现数据审计和其他安全相关的功能,如在运行中...
标签: MySQL mysql数据库
如果使用合适的工具,MySQL数据库的管理就会为得相当简单。应用MySQL命令行方式需要对MySQL知识非常熟悉,对SQL语言也是同样的道理。不仅如此,如果数据库的访问量很大,列表中数据的读取就会相当困难。 当前出现很多GUI MySQL客户程序,其中最为出色的是基于Web的phpMyAdmin工具。这是一种MySQL数据库前台的基于PHP的工具。PhpMyAdmin的缺点...

经验教程

773

收藏

82
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部

如果您有什么好的建议或者疑问,可以联系我们。 商务合作QQ:3272218541;3282258740。商务合作微信:13319608704;13319603564。

加好友请备注机构名称。让我们一起学习、一起进步tulaoshi.com 版权所有 © 2019 All Rights Reserved. 湘ICP备19009391号-3

微信公众号