当前位置: 首页 > 图文教程 > 数据库 > MYSQL > 妙用触发器有效的管理 MySQL数据库

MYSQL
数据库新手入门之MySQL中如何定义外键
MySQL ODBC进行MySQL和SQL Server转换
三方法优化MySQL数据库查询
意料外的MySQL运算符可获更多数据功能
Sql Server 2005 数据库维护计划
搞定MySQL数据库中文模糊检索问题
MySQL服务器内部安全数据目录如何访问
SECURITY INVOKER存储过程权限提升漏洞
MySQL常见错误提示及解决方法
MySQL 5 C API 访问数据库例子程序
管理员必读10个重要MySQL客户启动选项
通过rpm包安装、配置及卸载mysql
实现MySQL数据库数据的同步方法介绍
六大步保护MySQL数据库中重要数据
MySQL数据库的内部以及外部安全性简介
MySQL数据库的数据备份与恢复学习
Java连接各种数据库的实例
UNIX设置MySql数据同步 实现复制功能
扩展求方差的mysql函数例子
MySQL 事务预编译查询和Perl DBI简化

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 79 ::
收藏到网摘: n/a

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

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

一个简单实例

通过简单(虽然是人为的)实例来说明是了解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)