J'ai une structure de table comme ceci:
insert into temp value('s',s's')
4 Réponses :
Ce que vous recherchez est un insert, mettez à jour la gâchette. Dans votre déclencheur, vous essayez l'insert ou mettez-vous à jour à l'intérieur d'une prise de vue. Si elle est erronée, vous insérez ces valeurs dans votre autre table (en supposant que c'est une table de journalisation de quelque sorte). P>
Je ne sais pas ce que vous voulez vraiment réaliser - mais dans SQL Server, vous avez deux types de déclencheurs:
SQL Server ne possède pas avant insertion / mise à jour / supprimer des déclencheurs que d'autres RDBMS ont. P>
Vous pouvez avoir un nombre après les déclencheurs, mais un seul au lieu de déclencher pour chaque opération (Insérer, mettre à jour, supprimer). P>
Le cas plus commun est le dernier déclencheur, quelque chose comme: p> ici, j'inspecte le "inséré "Pseudo-table contenant toutes les lignes insérées dans votre table et pour chaque ligne contenant" statut = échec ", vous insérerez des champs dans une table" Temp ". P> Encore une fois - je ne sais pas ce que vous voulez vraiment en détail - mais ce serait le contour approximatif Comment le faire dans le code T-SQL SQL Server. P> Marc P> < / p>
En supposant que ce que vous voulez dire est, si la nouvelle valeur du statut soit échoue, alors qu'en est-il de cela: p>
Les déclencheurs font référence à la nouvelle ligne d'enregistrement comme «insérée» et l'ancienne comme «supprimée» p>
Créer la gâchette TrgcheckinSertedValues sur Status_Master après insérer comme P>
commencer p>
si inséré.Status = 'échouer'
Insérer dans dbo.temp (champ1, champ2, champ3)
Sélectionnez I.Name, i.Status, "n'importe quoi" d'inséré I P>
Déclencheur dans SQL, est utilisé pour déclencher une requête lorsque toute action effectue dans la table particulière comme insertion, suppression, mise à jour p>
http://allinworld99.blogspot.com/2015/04/ Triggers-in-sql.html p>
Pouvez-vous clarifier? Je ne comprends pas ce que tu veux vraiment atteindre ...
Une erreur de syntaxe, comme dans votre exemple, n'allez jamais à la gâchette.
D'accord avec Marc_s. Quelle est la "valeur mise à jour"? Statut? Quelle est la structure de la table appelée "temp"? Quelles sont ces valeurs de «s» que vous mettez là-bas?