获取数据库对应的 表名,字段名,类型,长度,序列名语句
select a.* , b.sequence_name from
(select
col.table_name,
col.column_name,
col.udt_name as col_arry_type,
col.character_maximum_length
from pg_catalog.pg_tables A,
information_schema.columns col
left join pg_catalog.pg_namespace pns on col.table_schema = pns.nspname
left join pg_catalog.pg_class pc on col.table_name=pc.relname and pc.relnamespace=pns.oid
left join pg_attribute pa on (col.column_name=pa.attname) and pa.attrelid=pc.oid
left join pg_catalog.pg_description dsc on pc.oid=dsc.objoid and col.ordinal_position= dsc.objsubid
where A.schemaname = col.table_schema
AND A.tablename = col.TABLE_NAME AND col.table_schema = 'public' ) a left join
(select ts.nspname as object_schema,
tbl.relname as table_name,
col.attname as column_name,
s.relname as sequence_name
from pg_class s
join pg_namespace sn on sn.oid = s.relnamespace
join pg_depend d on d.refobjid = s.oid and d.refclassid='pg_class'::regclass
join pg_attrdef ad on ad.oid = d.objid and d.classid = 'pg_attrdef'::regclass
join pg_attribute col on col.attrelid = ad.adrelid and col.attnum = ad.adnum
join pg_class tbl on tbl.oid = ad.adrelid
join pg_namespace ts on ts.oid = tbl.relnamespace
where s.relkind = 'S') b on (a.table_name = b.table_name) and a.column_name = b.column_name
order by a.table_name desc