[mysql] trigger et drop table
Fermé
fxtaa
Messages postés
1050
Date d'inscription
mardi 20 octobre 2009
Statut
Membre
Dernière intervention
2 avril 2015
-
23 févr. 2010 à 11:15
Yoan Messages postés 11795 Date d'inscription mardi 1 février 2005 Statut Modérateur Dernière intervention 10 décembre 2023 - 25 févr. 2010 à 11:07
Yoan Messages postés 11795 Date d'inscription mardi 1 février 2005 Statut Modérateur Dernière intervention 10 décembre 2023 - 25 févr. 2010 à 11:07
A voir également:
- [mysql] trigger et drop table
- Table ascii - Guide
- Table des matières word - Guide
- Share drop - Télécharger - Téléchargement & Transfert
- Air drop - Guide
- Mysql community server - Télécharger - Bases de données
2 réponses
Yoan
Messages postés
11795
Date d'inscription
mardi 1 février 2005
Statut
Modérateur
Dernière intervention
10 décembre 2023
2 331
23 févr. 2010 à 20:57
23 févr. 2010 à 20:57
On dirait que ce n'est pas possible, effectivement :
http://dev.mysql.com/doc/refman/5.0/fr/create-trigger.html
Mais bon, en même temps un trigger est directement rattaché à une table (d'où le ON tbl_name), donc si tu détruits une table il faut au préalable détruire ses triggers.
Ce que tu veux faire se réalise peut-être avec la clause DELETE plutôt que DROP. Auquel cas la table est vidée mais toujours existante, donc les triggers associés aussi.
http://dev.mysql.com/doc/refman/5.0/fr/create-trigger.html
CREATE TRIGGER trigger_name trigger_time trigger_event ON tbl_name FOR EACH ROW trigger_stmt trigger_event indique le type de commande qui active le déclencheur. Il peut valoir INSERT, UPDATE ou DELETE. Par exemple, un déclencheur BEFORE pour une commande INSERT peut être utilisé pour vérifier les valeurs avant leur insertion dans la table.
Mais bon, en même temps un trigger est directement rattaché à une table (d'où le ON tbl_name), donc si tu détruits une table il faut au préalable détruire ses triggers.
Ce que tu veux faire se réalise peut-être avec la clause DELETE plutôt que DROP. Auquel cas la table est vidée mais toujours existante, donc les triggers associés aussi.
fxtaa
Messages postés
1050
Date d'inscription
mardi 20 octobre 2009
Statut
Membre
Dernière intervention
2 avril 2015
74
24 févr. 2010 à 10:49
24 févr. 2010 à 10:49
Cela veut dire qu'un trigger ne peut pas être associé à une table inexistante?
Je les pensai rattacher à la db et lors d'un événement précis sur une table précise,ils effectuaient une action donnée. (un peu comme un script qui se déclenche sur tel action)
Je les pensai rattacher à la db et lors d'un événement précis sur une table précise,ils effectuaient une action donnée. (un peu comme un script qui se déclenche sur tel action)
Yoan
Messages postés
11795
Date d'inscription
mardi 1 février 2005
Statut
Modérateur
Dernière intervention
10 décembre 2023
2 331
25 févr. 2010 à 11:07
25 févr. 2010 à 11:07
Ben comme tu le vois dans la doc, oui.
Avec Postgres si je me souviens bien il faut virer tous les triggers avant de virer la table à laquelle ils sont associés, sans quoi la table ne peut être supprimée pour des pb de dépendance.
Avec Postgres si je me souviens bien il faut virer tous les triggers avant de virer la table à laquelle ils sont associés, sans quoi la table ne peut être supprimée pour des pb de dépendance.