mirror of
https://github.com/vrana/adminer.git
synced 2025-08-15 11:04:02 +02:00
PostgreSQL 8+: Fix exporting table constraints
This commit is contained in:
@@ -451,9 +451,7 @@ ORDER BY conkey, conname") as $row) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function constraints($table) {
|
function constraints($table) {
|
||||||
global $on_actions;
|
return get_key_vals("SELECT conname, " . (min_version(8) ? "pg_get_constraintdef(pg_constraint.oid)" : "CONCAT('CHECK ', consrc)") . "
|
||||||
$return = array();
|
|
||||||
foreach (get_rows("SELECT conname, consrc
|
|
||||||
FROM pg_catalog.pg_constraint
|
FROM pg_catalog.pg_constraint
|
||||||
INNER JOIN pg_catalog.pg_namespace ON pg_constraint.connamespace = pg_namespace.oid
|
INNER JOIN pg_catalog.pg_namespace ON pg_constraint.connamespace = pg_namespace.oid
|
||||||
INNER JOIN pg_catalog.pg_class ON pg_constraint.conrelid = pg_class.oid AND pg_constraint.connamespace = pg_class.relnamespace
|
INNER JOIN pg_catalog.pg_class ON pg_constraint.conrelid = pg_class.oid AND pg_constraint.connamespace = pg_class.relnamespace
|
||||||
@@ -461,10 +459,8 @@ WHERE pg_constraint.contype = 'c'
|
|||||||
AND conrelid != 0 -- handle only CONSTRAINTs here, not TYPES
|
AND conrelid != 0 -- handle only CONSTRAINTs here, not TYPES
|
||||||
AND nspname = current_schema()
|
AND nspname = current_schema()
|
||||||
AND relname = " . q($table) . "
|
AND relname = " . q($table) . "
|
||||||
ORDER BY connamespace, conname") as $row) {
|
ORDER BY connamespace, conname"
|
||||||
$return[$row['conname']] = $row['consrc'];
|
);
|
||||||
}
|
|
||||||
return $return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function view($name) {
|
function view($name) {
|
||||||
@@ -834,7 +830,7 @@ AND typelem = 0"
|
|||||||
}
|
}
|
||||||
|
|
||||||
foreach ($constraints as $conname => $consrc) {
|
foreach ($constraints as $conname => $consrc) {
|
||||||
$return_parts[] = "CONSTRAINT " . idf_escape($conname) . " CHECK $consrc";
|
$return_parts[] = "CONSTRAINT " . idf_escape($conname) . " $consrc";
|
||||||
}
|
}
|
||||||
|
|
||||||
$return .= implode(",\n ", $return_parts) . "\n) WITH (oids = " . ($status['Oid'] ? 'true' : 'false') . ");";
|
$return .= implode(",\n ", $return_parts) . "\n) WITH (oids = " . ($status['Oid'] ? 'true' : 'false') . ");";
|
||||||
|
@@ -8,6 +8,7 @@ MySQL: Don't offer empty enum value in edit
|
|||||||
PostgreSQL: Link user defined types
|
PostgreSQL: Link user defined types
|
||||||
PostgreSQL: Constraint enum values in editing (bug #270)
|
PostgreSQL: Constraint enum values in editing (bug #270)
|
||||||
PostgreSQL: Export functions
|
PostgreSQL: Export functions
|
||||||
|
PostgreSQL 8+: Fix exporting table constraints
|
||||||
SQLite: Show all supported pragmas in Variables
|
SQLite: Show all supported pragmas in Variables
|
||||||
MS SQL: Allow altering table in non-default schema (bug #405)
|
MS SQL: Allow altering table in non-default schema (bug #405)
|
||||||
MS SQL: Fix default values (bug #732, bug #733)
|
MS SQL: Fix default values (bug #732, bug #733)
|
||||||
|
Reference in New Issue
Block a user