Mi Google-Fuog me está fallando. ¿Cómo saber si un activador de PostgreSQL está deshabilitado o no?¿Cómo se puede saber si un activador está habilitado en PostgreSQL?
Respuesta
Es mi primer día con PostreSQL, pero creo que se puede comprobar el estado de disparo a través de la tabla de sistema pg_trigger: http://www.postgresql.org/docs/current/static/catalog-pg-trigger.html
Las columnas que se necesitan son tgrelid
y tgenabled
.
Enlace actualizado: http://www.postgresql.org/docs/current/static/catalog-pg-trigger.html –
El siguiente SQL hará el trabajo. Muestra todos los desencadenadores en su base de datos actual.
SELECT pg_namespace.nspname, pg_class.relname, pg_trigger.*
FROM pg_trigger
JOIN pg_class ON pg_trigger.tgrelid = pg_class.oid
JOIN pg_namespace ON pg_namespace.oid = pg_class.relnamespace
Si tgenabled es 'd', el disparador está desactivado. Todos los demás valores (documentados here) indican que está habilitado de alguna manera.
BTW. Si desea comprobar los factores desencadenantes de una tabla específica, la consulta es un poco más corto:
SELECT * FROM pg_trigger
WHERE tgrelid = 'your_schema.your_table'::regclass
El fundido al tipo regclass se obtiene de nombre de tabla calificado a OID (identificador de objeto) la fácil camino.
SELECT EXISTS (
SELECT tgenabled
FROM pg_trigger
WHERE tgname='your_unique_trigger_name' AND
tgenabled != 'D'
);
Si conoce el nombre del disparador es única la de arriba, devolverá verdadero (t) si está habilitado el your_unique_trigger_name gatillo:
exists
--------
t
(1 row)
Si deshabilitado volvería falsa (F).
- 1. Servidor SQL: verifique si un activador está habilitado o deshabilitado.
- 2. ¿Cómo saber si un motor TTS específico está marcado (habilitado)?
- 3. ¿Cómo se puede saber si una transmisión está cerrada?
- 4. ¿Cómo puede saber mi programa si Delphi se está ejecutando?
- 5. ¿Cómo detectar si Vista UAC está habilitado?
- 6. ¿Cómo comprobar si PHP mail() está habilitado?
- 7. Comprobando si javascript está habilitado
- 8. ¿Cómo comprobar si bluetooth está habilitado programáticamente?
- 9. Cómo saber si un actor está inactivo
- 10. ¿Cómo se puede saber si se está utilizando un paquete, procedimiento o función PL/SQL?
- 11. ¿Cómo saber si se está ejecutando un temporizador?
- 12. ¿Cómo puedo saber si un proceso se está ejecutando?
- 13. ¿Cómo saber programaticamente si Message Queue Server está habilitado en la máquina o no?
- 14. Cómo saber si el GPS está habilitado en Android usando Titanium
- 15. Detecta si HTC "arranque rápido" está habilitado
- 16. Si es posible, ¿cómo se puede insertar PostgreSQL?
- 17. ¿Cómo se puede saber si el iPhone se bloquea?
- 18. ¿Cómo detectar si Java está habilitado en IE?
- 19. Usando JavaScript, ¿cómo se puede saber si un usuario está retrocediendo?
- 20. ¿Cómo se puede saber si un QMutex está bloqueado o no?
- 21. Macro para saber si ARC está habilitado o no en Xcode 4.3.2
- 22. ¿Cómo se puede saber si dos comodines se superponen?
- 23. Cómo verifico si Debug está habilitado en web.config
- 24. ¿Cómo saber si un navegador está en modo "peculiar"?
- 25. ¿Cómo saber si un cierre está actualmente en curso?
- 26. Determinar si el módulo Magento está habilitado
- 27. ¿Cómo se puede saber si la sesión de la terminal actual está en la pantalla GNU?
- 28. ¿Cómo comprobar si NFC está habilitado o no en Android?
- 29. ¿Cómo se comprueba si un botón está habilitado o no en Android?
- 30. Comprueba si un complemento de Firefox 3.5 está habilitado
son los desencadenadores habilitados por defecto al crear em? Es explícito ALTER TABLE ENABLE TRIGGER necesario? – user4658312