bonjour à tous
j'ai un manque cruciale d'information:
est-il possible de désactiver un trigger a partir d'une appli delphi ? ou partir d'une ps ?
si cela est possible, qu'elle est l'IBX qui est approprier pour le faire.
merci à tous
bonjour à tous
j'ai un manque cruciale d'information:
est-il possible de désactiver un trigger a partir d'une appli delphi ? ou partir d'une ps ?
si cela est possible, qu'elle est l'IBX qui est approprier pour le faire.
merci à tous
Oui c'est possible mais cette opération est à réserver pour les traitements de maintenance de la base et non pour une utilisation courante.
Car a chaque désactivation celà décrémente ne nombre de modification autoriser sur la table (255 après sa création ou après une restauration de celle ci). Une fois le compteur à 0 plus aucunne modification de la structure de la table n'est possible. Il faut faire un backup de la base suivi d'une restauration pour réinitialiser ces compteurs.
La commande est
Et pour la réactiver :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 SET TERM ^ ; ALTER TRIGGER CANDIDATS_IB_BI INACTIVE BEFORE INSERT POSITION 0 AS BEGIN IF (NEW.ID IS NULL) THEN NEW.ID = GEN_ID(GEN_CANDIDATS_IB_ID,1); END ^ SET TERM ; ^
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 SET TERM ^ ; ALTER TRIGGER CANDIDATS_IB_BI ACTIVE BEFORE INSERT POSITION 0 AS BEGIN IF (NEW.ID IS NULL) THEN NEW.ID = GEN_ID(GEN_CANDIDATS_IB_ID,1); END ^ SET TERM ; ^
en faite voici mon pb je veux remplir une table avec des données de deux types et sur cette table j'ai un trigger.
pour une partie de ces données le trigger doit réagir pour l'autre le trigger doit rester inactif es ce que vous n'avez pas une idée,
je suis vraiment coincé
merci d'avance
• Soit tu peux déclencher le trigger en fonction de la valeur d'un champ de la table : 0 pour les lignes qui ne devront pas le déclencher, 1 pour celles qui devront. Et hop 8)
• Soit manisfestement, le trigger n'est pas adapté.
Un trigger est fait pour réagier à certaines valeurs et/ou certaines modifications. S'il ne doit pas réagir tout le temps et qu'aucun champ de la ligne ne peut le prédire alors le trigger n'est probablement pas la meilleure solution.
Vois plutôt pour une PS à lancer "lorsqu'il le faudra"
merci je pense que prendrai le prémière soluce
merci
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager