Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 8 additions & 3 deletions lib/discovery.js
Original file line number Diff line number Diff line change
Expand Up @@ -263,7 +263,10 @@ function mixinDiscovery(PostgreSQL) {
var sql =
'SELECT tc.table_schema AS "fkOwner", tc.constraint_name AS "fkName", tc.table_name AS "fkTableName",'
+ ' kcu.column_name AS "fkColumnName", kcu.ordinal_position AS "keySeq",'
+ ' ccu.table_schema AS "pkOwner", \'PK\' AS "pkName", '
+ ' ccu.table_schema AS "pkOwner",'
+ ' (SELECT constraint_name'
+ ' FROM information_schema.table_constraints tc2'
+ ' WHERE tc2.constraint_type = \'PRIMARY KEY\' and tc2.table_name=ccu.table_name limit 1) AS "pkName",'
+ ' ccu.table_name AS "pkTableName", ccu.column_name AS "pkColumnName"'
+ ' FROM information_schema.table_constraints tc'
+ ' JOIN information_schema.key_column_usage AS kcu'
Expand Down Expand Up @@ -297,8 +300,10 @@ function mixinDiscovery(PostgreSQL) {
PostgreSQL.prototype.buildQueryExportedForeignKeys = function(owner, table) {
var sql = 'SELECT kcu.constraint_name AS "fkName", kcu.table_schema AS "fkOwner", kcu.table_name AS "fkTableName",'
+ ' kcu.column_name AS "fkColumnName", kcu.ordinal_position AS "keySeq",'
+ ' \'PK\' AS "pkName", ccu.table_schema AS "pkOwner",'
+ ' ccu.table_name AS "pkTableName", ccu.column_name AS "pkColumnName"'
+ ' (SELECT constraint_name'
+ ' FROM information_schema.table_constraints tc2'
+ ' WHERE tc2.constraint_type = \'PRIMARY KEY\' and tc2.table_name=ccu.table_name limit 1) AS "pkName",'
+ ' ccu.table_schema AS "pkOwner", ccu.table_name AS "pkTableName", ccu.column_name AS "pkColumnName"'
+ ' FROM'
+ ' information_schema.constraint_column_usage ccu'
+ ' JOIN information_schema.key_column_usage kcu'
Expand Down