Tengo una gran base de datos que necesito para extraer todas las claves primarias y claves externas de cada tabla.
Tengo pgAdmin III.
¿Hay alguna manera de hacer esto automáticamente y no revisar cada tabla manualmente?
postgresql
foreign-key
primary-key
pgadmin
Nick Ginanto
fuente
fuente

WHERE contype IN ('f', 'p', 'u')Basado en la solución Erwin:
Devolverá una tabla de forma:
fuente
No es necesario analizar
pg_get_constraintdef(), solo use columnas depg_constrainttabla para obtener otros detalles ( los documentos ).Aquí
constraint_typepuede ser:Basado en la respuesta de Erwin :
Los resultados están ordenados por
schemaytable.Nota técnica: ver esta pregunta sobre
with ordinality.fuente
Recientemente tuve que implementar esto para una capa de acceso a datos que construye utilidades CRUD basadas en el esquema de información, y terminó con esto.
fuente