Hola Lista Los unique se pueden implementar por indices o por constraints, para sacar la lista por los primeros (indice):
select s.nspname as schema_name, t.relname as table_name, i.relname as index_name, a.attname as column_name, ix.* from pg_class t, pg_class i, pg_index ix, pg_attribute a, pg_namespace s where t.oid = ix.indrelid and i.oid = ix.indexrelid and a.attrelid = t.oid and a.attnum = ANY(ix.indkey) and t.relkind = 'r' and t.relnamespace=s.oid and ix.indisunique and not ix.indisprimary -- and s.nspname='<schema>' -- and t.relname='<tabla>' -- and a.attname='<columna>' para sacar los implementados por constraints: select cc.conrelid::regclass AS table_from, confrelid::regclass AS table_to, cc.conname, cc.contype, pg_get_constraintdef(cc.oid) as definicion from pg_catalog.pg_constraint cc JOIN pg_namespace n ON n.oid = cc.connamespace join pg_catalog.pg_class c on c.oid = cc.conrelid join pg_catalog.pg_attribute a on a.attrelid = cc.conrelid and a.attnum = any(cc.conkey) where cc.contype = 'u' -- and n.nspname = '<schema>' -- and cc.conrelid::regclass = '<tabla>' -- and cc.conname='<columna>' group by 1,2,3,4,5 El 21 de septiembre de 2017, 12:50, Stephen Amell<stephenam...@inbox.lv> escribió: > Buenas tardes Lista! > > Hoy les escribo porque estoy desarrollando un proceso de anonimizacion de > base de datos, que ya funciona bastante bien por cierto, pero tengo un > problema que no puedo resolver. Los unique, si bien necesito que la tabla > tenga PK para funcionar, necesito saber si ademas hay otra constraint > unique que deba considerar (las que tienen el icono del 1 en azul en el > pgadmin). > > Dado un campo, de una tabla, de un esquema, de una base ( o sea que > conozco db.schema.table.campo ), necesito encontrar si este campo es parte > de alguna constrain, y de ser asi su correspondiente drop y create. > > Algo asi: > > Select NombreUQ, DropStr, CreateStr > From tabla_magica > where schema = 'esquema' > and tabla = 'tabla' > and campo = 'campo'; > > > ¿Alguna sugerencia? > > > > -- Cordialmente, Ing. Hellmuth I. Vargas S. Esp. Telemática y Negocios por Internet Oracle Database 10g Administrator Certified Associate EnterpriseDB Certified PostgreSQL 9.3 Associate