OVH Cloud OVH Cloud

Existe-t-il des triggers "génériques" ?

2 réponses
Avatar
Gilles TOURREAU
Bonsoir tout le monde !

Voilà, dans plusieurs tables j'ai 2 colonnes qui forme une contrainte
de clé étrangère :

ALTER TABLE MaTable ADD CONSTRAINT FK_MaTable_MaTableParent FOREIGN KEY
(Colonne1, Colonne2) REFERENCES MaTableParent(Colonne1, Colonne2) ON
UPDATE CASCADE ON DELETE NO ACTION;

La colonne 1 est NOT NULL
La colonne 2 est NULL

Le seul hic c'est que si l'on supprime un seul enregistrement dans
MaTableParent, je dois mettre la colonne2 à NULL et ne pas changer la
colonne1...

Est ce qu'il existe un moyen spécifier cette contrainte directement ou
dois-je passer par des trigger ?

Etant donnée que ces colonnes dans mes tables sont de mêmes nom et que
j'ai 40 tables différentes qui contiennent ce genre de contrainte, je
voudrais savoir s'il n'existe pas une façon de créer un trigger qui
fonctionne quelque soit la table ? Car je me vois mal faire
copier/coller de 40 trigger en changeant un seul mot (le nom de la
table) et en plus au niveau maintenance c'est pas terrible...

En vous remerciant par avance de vos lumières !

--
Gilles TOURREAU
Responsable informatique
gilles.tourreau@pos.fr

Société P.O.S
Spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr

2 réponses

Avatar
Christian
pourquoi ne pas faire une fonction qui prend en parametre la table et le
champs a vider ?


--
http://www.correzeweb.com
http://www.localetv.com
http://cerbermail.com/?5RVJmRhSQw
Avatar
Gilles TOURREAU
Christian a formulé la demande :
pourquoi ne pas faire une fonction qui prend en parametre la table et le
champs a vider ?



Et comment je l'appel ?

--
Gilles TOURREAU
Responsable informatique


Société P.O.S
Spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr