Move triggers to table

git-svn-id: https://adminer.svn.sourceforge.net/svnroot/adminer/trunk@283 7c3ca157-0c34-0410-bff1-cbf682f78f5c
This commit is contained in:
jakubvrana 2007-07-28 20:33:18 +00:00
parent b5ffc73bd2
commit 2c5cc9b908

View file

@ -7,7 +7,7 @@ function dump_table($table, $data = true) {
global $mysql;
$result = $mysql->query("SHOW CREATE TABLE " . idf_escape($table));
if ($result) {
echo $mysql->result($result, 1) . ";\n";
echo $mysql->result($result, 1) . ";\n\n";
$result->free();
if ($data) {
$result = $mysql->query("SELECT * FROM " . idf_escape($table)); //! enum and set as numbers, binary as _binary
@ -20,6 +20,17 @@ function dump_table($table, $data = true) {
}
echo "\n";
}
if ($mysql->server_info >= 5) {
$result = $mysql->query("SHOW TRIGGERS LIKE '" . $mysql->escape_string(addcslashes($table, "%_")) . "'");
if ($result->num_rows) {
echo "DELIMITER ;;\n\n";
while ($row = $result->fetch_assoc()) {
echo "CREATE TRIGGER " . idf_escape($row["Trigger"]) . " $row[Timing] $row[Event] ON " . idf_escape($row["Table"]) . " FOR EACH ROW $row[Statement];;\n\n";
}
echo "DELIMITER ;\n\n";
}
$result->free();
}
}
function dump($db) {
@ -47,19 +58,8 @@ function dump($db) {
}
$result->free();
if ($mysql->server_info >= 5) {
$result = $mysql->query("SHOW TRIGGERS");
if ($result->num_rows || $routines[$db]) {
echo "DELIMITER ;;\n\n";
}
while ($row = $result->fetch_assoc()) {
echo "CREATE TRIGGER " . idf_escape($row["Trigger"]) . " $row[Timing] $row[Event] ON " . idf_escape($row["Table"]) . " FOR EACH ROW $row[Statement];;\n\n";
}
echo implode("", (array) $routines[$db]);
if ($result->num_rows || $routines[$db]) {
echo "DELIMITER ;\n\n";
}
$result->free();
if ($routines[$db]) {
echo "DELIMITER ;;\n\n" . implode("", $routines[$db]) . "DELIMITER ;\n\n";
}
echo "\n\n";