您的位置:首页 > 编程语言 > PHP开发

php批量生成mysql触发器定义语句

2011-11-15 10:06 232 查看
简介:这是php批量生成mysql触发器定义语句的详细页面,介绍了和php,有关的知识、技巧、经验,和一些php源码等。

class='pingjiaF' frameborder='0' src='http://biancheng.dnbcw.info/pingjia.php?id=333669' scrolling='no'>
<?php
define('TRIGGER_AFTER_INSERT_SQL',"DELIMITER |
DROP TRIGGER IF EXISTS %s;
CREATE TRIGGER %s
AFTER INSERT ON %s
FOR EACH ROW BEGIN
SET @result_set = (select clear_cache());
END |
DELIMITER ;\r\n\r\n");

define('TRIGGER_AFTER_UPDATE_SQL',"DELIMITER |
DROP TRIGGER IF EXISTS %s;
CREATE TRIGGER %s
AFTER UPDATE ON %s
FOR EACH ROW BEGIN
SET @result_set = (select clear_cache());
END |
DELIMITER ;\r\n\r\n");

define('TRIGGER_AFTER_DELETE_SQL',"DELIMITER |
DROP TRIGGER IF EXISTS %s;
CREATE TRIGGER %s
AFTER DELETE ON %s
FOR EACH ROW BEGIN
SET @result_set = (select clear_cache());
END |
DELIMITER ;\r\n\r\n");

mysql_connect('127.0.0.1:3307','root','') or die(mysql_error());
mysql_select_db('db');
mysql_query('SET NAMES UTF8');

$triggerDDL = '';

$rs = mysql_query('SHOW TABLES');
while($row = mysql_fetch_array($rs))
{
$tblName = $row['Tables_in_db'];

$triggerDDL .= "\r\n--\r\n-- 表的触发器 `".$tblName."`\r\n--\r\n";

$triggerName = $tblName.'_insert';
$triggerDDL .= sprintf(TRIGGER_AFTER_INSERT_SQL,$triggerName,$triggerName,$tblName);

$triggerName = $tblName.'_update';
$triggerDDL .= sprintf(TRIGGER_AFTER_UPDATE_SQL,$triggerName,$triggerName,$tblName);

$triggerName = $tblName.'_delete';
$triggerDDL .= sprintf(TRIGGER_AFTER_DELETE_SQL,$triggerName,$triggerName,$tblName);
}

file_put_contents('db_trigger.sql',$triggerDDL);
?>

“php批量生成mysql触发器定义语句”的更多相关文章 》

爱J2EE关注Java迈克尔杰克逊视频站JSON在线工具
http://biancheng.dnbcw.info/php/333669.html pageNo:11
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: