¿Cuál es el comando para enumerar todos los desencadenadores en una base de datos MySQL?¿Cómo se enumeran todos los factores desencadenantes en una base de datos MySQL?
Respuesta
El comando es:
show triggers
o se puede acceder a la tabla INFORMATION_SCHEMA
directamente por:
select trigger_schema, trigger_name, action_statement
from information_schema.triggers
- Esto se puede hacer desde la versión 5.0.10 en adelante.
- Más información sobre el
TRIGGERS
table is here.
Para mostrar un disparador particular, en un esquema particular que usted puede intentar lo siguiente:
select * from information_schema.triggers where
information_schema.triggers.trigger_name like '%trigger_name%' and
information_schema.triggers.trigger_schema like '%data_base_name%'
Puede utilizar a continuación para encontrar una definición de disparo en particular.
SHOW TRIGGERS LIKE '%trigger_name%'\G
o el siguiente para mostrar todos los factores desencadenantes en la base de datos. Funcionará para MySQL 5.0 y superior.
SHOW TRIGGERS\G
Espero que el siguiente código le brinde más información.
select * from information_schema.triggers where
information_schema.triggers.trigger_schema like '%your_db_name%'
Esto le dará total de 22 columnas en versión de MySQL: 5.5.27 por encima del promedio
TRIGGER_CATALOG
TRIGGER_SCHEMA
TRIGGER_NAME
EVENT_MANIPULATION
EVENT_OBJECT_CATALOG
EVENT_OBJECT_SCHEMA
EVENT_OBJECT_TABLE
ACTION_ORDER
ACTION_CONDITION
ACTION_STATEMENT
ACTION_ORIENTATION
ACTION_TIMING
ACTION_REFERENCE_OLD_TABLE
ACTION_REFERENCE_NEW_TABLE
ACTION_REFERENCE_OLD_ROW
ACTION_REFERENCE_NEW_ROW
CREATED
SQL_MODE
DEFINER
CHARACTER_SET_CLIENT
COLLATION_CONNECTION
DATABASE_COLLATION
Evitaría usar 'LIKE' al tratar con el esquema. He trabajado en entornos donde hacerlo de esa manera sería propenso a errores, donde un cliente tenía una base de datos llamada "compañía" y otra llamada "proyecto_empresa". También sugiero que se capitalicen KEYWORDS para mayor claridad e INFORMATION_SCHEMA y las columnas allí, por lo que está claro que no se trata de una base de datos común. – AndrewWhalan
- 1. ¿Cómo puedo eliminar todos los desencadenantes en una base de datos MySQL usando una declaración SQL?
- 2. MySQL deshabilita todos los desencadenantes
- 3. ¿Cómo enumero (o exporto) el código para todos los desencadenantes en una base de datos?
- 4. Mysql: cuándo utilizar los desencadenantes
- 5. ¿Cuáles son los diferentes factores desencadenantes en WPF?
- 6. ¿Cómo se enumeran todos los procesos secundarios en python?
- 7. ¿Cómo priocratiza múltiples factores desencadenantes de una tabla?
- 8. Revocar todos los privilegios para todos los usuarios en una base de datos MySQL
- 9. MySQL: Recorte todos los campos en la base de datos
- 10. ¿Cómo identifica los desencadenantes asociados con una tabla en una base de datos de sybase?
- 11. ¿Cómo veo todos los eventos MySQL que se ejecutan en mi base de datos?
- 12. HDFS: ¿Cómo se enumeran los archivos recursivamente?
- 13. ¿Cómo se enumeran los identificadores del proceso?
- 14. Cómo copiar una tabla de una base de datos mysql a otra base de datos mysql
- 15. Tengo una lista de Python de los factores primos de un número. ¿Cómo encuentro (pythonically) todos los factores?
- 16. Analizar todos los procedimientos almacenados en una base de datos
- 17. ¿Cómo elimino una base de datos MySQL?
- 18. ¿Cómo se enumeran los miembros del objeto COM en C#?
- 19. ¿Cómo se enumeran los archivos en un directorio estático?
- 20. ¿Cómo se almacenan los NULL en una base de datos?
- 21. ¿Cómo se enumeran las pestañas en vim?
- 22. ¿Cómo se implementan los activadores de base de datos dentro de un motor de base de datos SQL?
- 23. ¿Cómo se identifican los índices no utilizados en una base de datos MySQL?
- 24. ¿Cómo se puede saber el tamaño total de los datos en la base de datos MySQL?
- 25. ¿Almacena datos de imagen en una base de datos MySQL?
- 26. ¿Cómo se enumeran los volúmenes en Mac OS X?
- 27. desencadenantes en cascada en SQLite
- 28. Oracle: consulta SQL para encontrar todos los desencadenantes que pertenecen a las tablas?
- 29. Obtenga todos los factores de un número (iteratorsdowndown :)
- 30. ¿Cómo se enumeran los modos menores activos en emacs?
recomiendo ir con el uso de la opción "Mostrar disparadores" consulta en lugar de acceder directamente INFORMATION_SCHEMA - este último será muy lento una vez que tenga más de mil bases de datos en el servidor, mientras que "SHOW TRIGGERS" todavía tiene un rendimiento sobresaliente. –
Gracias por la segunda versión "complicada". El primero no funciona (no se conoce el resion) en uno de los hosts ... – userlond
Tenga en cuenta que 'SHOW TRIGGERS' requiere que usted tenga el privilegio' TRIGGER' para esa base de datos y tabla. Si inicia sesión en MySQL con un usuario sin privilegios, la ejecución de 'SHOW TRIGGERS' no arrojará nada en lugar de arrojar un error. Eso puede ser confuso si no conoce el requisito de privilegio. –