PostgreSQL: Do not export triggers if not requested

This commit is contained in:
Jakub Vrana 2018-01-22 14:25:27 +01:00
parent ce17b6cf46
commit eee9a62c8f
2 changed files with 7 additions and 24 deletions

View file

@ -617,11 +617,6 @@ AND typelem = 0"
return $return; return $return;
} }
/** Get SQL command to create table
* @param string
* @param bool
* @return string
*/
function create_sql($table, $auto_increment) { function create_sql($table, $auto_increment) {
global $connection; global $connection;
$return = ''; $return = '';
@ -634,7 +629,6 @@ AND typelem = 0"
ksort($indexes); ksort($indexes);
$fkeys = foreign_keys($table); $fkeys = foreign_keys($table);
ksort($fkeys); ksort($fkeys);
$triggers = triggers($table);
if (!$status || empty($fields)) { if (!$status || empty($fields)) {
return false; return false;
@ -695,29 +689,17 @@ AND typelem = 0"
} }
} }
// triggers
foreach ($triggers as $trg_id => $trg) {
$trigger = trigger($trg_id, $status['Name']);
$return .= "\n\nCREATE TRIGGER " . idf_escape($trigger['Trigger']) . " $trigger[Timing] $trigger[Events] ON " . idf_escape($status["nspname"]) . "." . idf_escape($status['Name']) . " $trigger[Type] $trigger[Statement];";
}
return rtrim($return, ';'); return rtrim($return, ';');
} }
/** Get SQL commands to create triggers
* @param string
* @return string
*/
//@TODO
function trigger_sql($table) { function trigger_sql($table) {
$status = table_status($table);
$return = ""; $return = "";
//foreach (get_rows("SHOW TRIGGERS LIKE " . q(addcslashes($table, "%_\\")), null, "-- ") as $row) { foreach (triggers($table) as $trg_id => $trg) {
// $return .= "\n" . ($style == 'CREATE+ALTER' ? "DROP TRIGGER IF EXISTS " . idf_escape($row["Trigger"]) . ";;\n" : "") $trigger = trigger($trg_id, $status['Name']);
// . "CREATE TRIGGER " . idf_escape($row["Trigger"]) . " $row[Timing] $row[Event] ON " . table($row["Table"]) . " FOR EACH ROW\n$row[Statement];;\n"; $return .= "\nCREATE TRIGGER " . idf_escape($trigger['Trigger']) . " $trigger[Timing] $trigger[Events] ON " . idf_escape($status["nspname"]) . "." . idf_escape($status['Name']) . " $trigger[Type] $trigger[Statement];;\n";
//} }
//return $return; return $return;
return false;
} }

View file

@ -3,6 +3,7 @@ Adminer: Fix Search data in tables (regression from 4.4.0)
CSP: Allow any styles, images, media and fonts, disallow base-uri CSP: Allow any styles, images, media and fonts, disallow base-uri
SQLite: Enable foreign key checks SQLite: Enable foreign key checks
PostgreSQL: Respect NULL default value PostgreSQL: Respect NULL default value
PostgreSQL: Do not export triggers if not requested
Elasticsearch: Insert, update, delete Elasticsearch: Insert, update, delete
Adminer 4.4.0 (released 2018-01-17): Adminer 4.4.0 (released 2018-01-17):