postgreSQL获取主键
select
pg_constraint.conname as pk_name,
pg_attribute.attname as colname,
pg_type.typname as typename
from
pg_constraint
inner join pg_class on pg_constraint.conrelid = pg_class.oid
inner join pg_attribute on pg_attribute.attrelid = pg_class.oid and pg_attribute.attnum = pg_constraint.conkey[1]
inner join pg_type on pg_type.oid = pg_attribute.atttypid
where pg_class.relname = 'tableName'
and pg_constraint.contype='p'
and pg_table_is_visible(pg_class.oid) --表在搜索中可见
postgreSQL获取字段信息
SELECT COL_DESCRIPTION(A.ATTRELID, A.ATTNUM) AS COMMENT,
FORMAT_TYPE(A.ATTTYPID, A.ATTTYPMOD) AS TYPE,
A.ATTNAME AS NAME,
A.ATTNOTNULL AS NOTNULL
FROM PG_CLASS AS C, PG_ATTRIBUTE AS A
WHERE C.RELNAME = 'tableName'
AND A.ATTRELID = C.OID
AND A.ATTNUM > 0