自動生成mysql觸發器代碼,實現數據同步

自動生成mysql觸發器代碼,實現數據同步php

若是公司裏有上百個表要作觸發器,若是手動寫代碼的話。很累,因此今天寫了一個小程序,自動生成mysql的觸發代碼。

$dbname = 'test';//數據庫
$tab1 = 'user'; //執行的表
$tab2 = 'user_bak'; //被觸發的表
$conn = mysql_connect("localhost","root", "root",$dbname) or die("請檢查你的主機名數據庫用戶名和密碼");
mysql_select_db($dbname, $conn) or die("數據庫尚未鏈接");
$query = mysql_query("SHOW COLUMNS FROM $tab1");mysql_query("");
while($row=mysql_fetch_array($query,MYSQL_NUM)){//獲得表的字段數組
$temp[] = $row[0];
$str1 .=  '`'.$row[0].'`,';
$str2 .=  'new.'.$row[0].',';
$str3 .=  $row[0].'=new.'.$row[0].',';
}
//insert觸發器
$inser_str  = "mysql

{$tab1}表的insert觸發器

";
$inser_str .= "create trigger ".$tab1."_insert
AFTER INSERT
on ".$tab1."
";
$inser_str .="for each row
INSERT INTO {$tab2} (".rtrim($str1,',').') VALUES ('.rtrim($str2,',').');';
//update觸發器
 

閱讀全文>>sql

相關文章
相關標籤/搜索