Publicidad

Desactivar claves constraints en postgreSQL


Por Alex el 03/07/2017, Comentar el artículo

Comparte este artículo:      




A veces es necesario deshabilitar las restricciones de claves foráneas en postgreSQL para realizar trabajos de mantenimiento o porque estamos desarrollando en entorno de desarrollo y nos molestan para hacer pruebas.


Es un proceso sencillo con la siguiente sentencia:

ALTER TABLE nombre_tabla DISABLE TRIGGER ALL

Con esta sentencia deshabilitamos las claves de una tabla específica.

Para volverla a habilitar

ALTER TABLE nombre_tabla ENABLE TRIGGER ALL

Pero si tenemos 200 tablas hacer esto una a una es un poco pesado por eso podemos ejecutar esta consulta:

select 'ALTER TABLE ' || table_name || ' DISABLE TRIGGER ALL;' from information_schema.tables where table_schema = 'public';

Que lo que hace es crearnos una sentencia de DISABLE por cada tabla

ALTER TABLE promotions DISABLE TRIGGER ALL;
ALTER TABLE notifications DISABLE TRIGGER ALL;
ALTER TABLE studies_charts DISABLE TRIGGER ALL;
ALTER TABLE radio_config_comercials DISABLE TRIGGER ALL;
...
ALTER TABLE xppp DISABLE TRIGGER ALL;

Para habilitarlas el mismos proceso pero con ENABLE

Saludos
Alex.

Si te ha gustado el artículo compartelo en:      




Añadir un comentarios:

Nombre:
Email: (no se publica el email)




SIGUENOS EN

ARCHIVO

Publicidad

.