Règles de création des déclencheurs pour les tables personnalisées
Lorsque vous ajoutez des instructions SQL afin de créer et supprimer des déclencheurs pour des tables personnalisées, prenez soin d'utiliser les règles appropriées.
Fichier SQL de création d'un déclencheur
Dans le Utility server Docker container, ajouter des instructions SQL pour créer des déclencheurs dans le fichier utilities_root/schema/9.0.0.0/db2/wcs.stage.trigger.sql.
Insérez les instructions SQL pour créer des déclencheurs pour les tables personnalisées dans ce fichier.
Fichier SQL de suppression d'un déclencheur
Dans le Utility server Docker container, ajouter des instructions SQL pour supprimer des déclencheurs dans le fichier utilities_root/schema/9.0.0.0/db2/wcs.droptrigger.sql.
Placez les instructions SQL de suppression de déclencheurs pour des tables personnalisées dans ces fichiers.
Convention d'attribution de nom de déclencheur
La convention d'attribution de nom des déclencheurs permet de s'assurer que les nouveaux déclencheurs des tables personnalisées sont dotés de noms uniques.
HCL Commerce nomme un déclencheur en incrémentant le dernier numéro du dernier déclencheur dans le fichier db2/wcs.stage.trigger.sql. Vous ne devez pas utiliser cette convention d'attribution de nom pour les nouveaux déclencheurs car cela risquerait de provoquer un conflit entre vos noms de déclencheurs personnalisés et les nouveaux déclencheurs éventuellement introduits par HCL Commerce dans des groupes de correctifs ou des éditions ultérieures.
Vérifiez que le nom de vos nouveaux déclencheurs est conforme au modèle contenu dans le fichier oracle/wcs.stage.trigger.sql :
- Insérer un déclencheur : ISTG_ CustomTableName
- Mettre à jour le déclencheur : USTG_ CustomTableName
- Supprimer le déclencheur : DSTG_ CustomTableName
Conditions requises pour la création de déclencheurs
Vous devez créer trois déclencheurs pour la table de données personnalisée :
- Un déclencheur d'insertion (INSERT) permettant de capturer les opérations d'insertion sur la table personnalisée.
- Un déclencheur de mise à jour (UPDATE) permettant de capturer les opérations de mise à jour sur la table personnalisée.
- Un déclencheur de suppression (DELETE) permettant de capturer les opérations de suppression sur la table personnalisée.
Pour la valeur de la colonne STAGLOG.STGRFNBR, il est recommandé d'utiliser la fonction NEXTVAL FOR STAGESEQ afin de la générer. Si vous utilisez un autre compteur, des collisions de clés peuvent se produire dans la table STAGLOG.
Utilisez la fonction STAGESEQ.NEXTVAL pour générer la valeur de colonne STAGLOG.STGRFNBR. Lorsque vous insérez une valeur pour la colonne STAGLOG.STGSTMP, utilisez la fonction SYSDATE pour générer la valeur d'horodatage. Si vous utilisez d'autres fonctions pour générer cette valeur, la valeur générée peut ne pas correspondre au format de données approprié attendu par l'utilitaire de transfert. Si le format de données de la valeur générée n'est pas approprié, des données peuvent être exclues de l'utilitaire de transfert.- Pour les colonnes STAGLOG qui ne sont pas définies directement dans cette table, utilisez une valeur NULL.