Identify the collation correctly when reverse engineering table SQL. Fixes #1847

This commit is contained in:
Akshay Joshi 2016-10-14 15:57:55 -07:00 committed by Dave Page
parent c7520cf86d
commit 2d39b5fb41
3 changed files with 3 additions and 3 deletions

View File

@ -11,7 +11,7 @@ SELECT
indkey, coll.collname, nspc.nspname as collnspname , attoptions, indkey, coll.collname, nspc.nspname as collnspname , attoptions,
-- Start pgAdmin4, added to save time on client side parsing -- Start pgAdmin4, added to save time on client side parsing
CASE WHEN length(coll.collname) > 0 AND length(nspc.nspname) > 0 THEN CASE WHEN length(coll.collname) > 0 AND length(nspc.nspname) > 0 THEN
concat(coll.collname,'."',nspc.nspname,'"') concat(quote_ident(nspc.nspname),'.',quote_ident(coll.collname))
ELSE '' END AS collspcname, ELSE '' END AS collspcname,
CASE WHEN strpos(format_type(ty.oid,att.atttypmod), '.') > 0 THEN CASE WHEN strpos(format_type(ty.oid,att.atttypmod), '.') > 0 THEN
split_part(format_type(ty.oid,att.atttypmod), '.', 2) split_part(format_type(ty.oid,att.atttypmod), '.', 2)

View File

@ -11,7 +11,7 @@ SELECT att.attname as name, att.*, def.*, pg_catalog.pg_get_expr(def.adbin, def.
indkey, coll.collname, nspc.nspname as collnspname , attoptions, indkey, coll.collname, nspc.nspname as collnspname , attoptions,
-- Start pgAdmin4, added to save time on client side parsing -- Start pgAdmin4, added to save time on client side parsing
CASE WHEN length(coll.collname) > 0 AND length(nspc.nspname) > 0 THEN CASE WHEN length(coll.collname) > 0 AND length(nspc.nspname) > 0 THEN
concat(quote_ident(coll.collname),'.',quote_ident(nspc.nspname)) concat(quote_ident(nspc.nspname),'.',quote_ident(coll.collname))
ELSE '' END AS collspcname, ELSE '' END AS collspcname,
CASE WHEN strpos(format_type(ty.oid,att.atttypmod), '.') > 0 THEN CASE WHEN strpos(format_type(ty.oid,att.atttypmod), '.') > 0 THEN
split_part(format_type(ty.oid,att.atttypmod), '.', 2) split_part(format_type(ty.oid,att.atttypmod), '.', 2)

View File

@ -11,7 +11,7 @@ SELECT att.attname as name, att.*, def.*, pg_catalog.pg_get_expr(def.adbin, def.
indkey, coll.collname, nspc.nspname as collnspname , attoptions, indkey, coll.collname, nspc.nspname as collnspname , attoptions,
-- Start pgAdmin4, added to save time on client side parsing -- Start pgAdmin4, added to save time on client side parsing
CASE WHEN length(coll.collname) > 0 AND length(nspc.nspname) > 0 THEN CASE WHEN length(coll.collname) > 0 AND length(nspc.nspname) > 0 THEN
concat(quote_ident(coll.collname),'.',quote_ident(nspc.nspname)) concat(quote_ident(nspc.nspname),'.',quote_ident(coll.collname))
ELSE '' END AS collspcname, ELSE '' END AS collspcname,
CASE WHEN strpos(format_type(ty.oid,att.atttypmod), '.') > 0 THEN CASE WHEN strpos(format_type(ty.oid,att.atttypmod), '.') > 0 THEN
split_part(format_type(ty.oid,att.atttypmod), '.', 2) split_part(format_type(ty.oid,att.atttypmod), '.', 2)