2011-03-10 2 views
2

J'utilise actuellement Subsonic 2.0.3 pour générer mon DataAccess pour un projet existant.Échec du déclenchement d'insertion lors de l'utilisation de SubSonic 2.0.3

Lors de l'ajout d'un déclencheur sql sur la table, commence subsonique à l'échec lors de l'insertion avec le message d'erreur

The target table 'Table Name' of the DML statement cannot have any enabled triggers if the statement contains an OUTPUT clause without INTO clause. 

Le déclencheur J'utilise est

SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
ALTER TRIGGER [dbo].[TriggerName] 
on [dbo].[TableName] 
AFTER Insert 
AS 
BEGIN 
INSERT INTO TableName 
      (Values) 
    SELECT Values 
    FROM Inserted 

END 

Cela semble être parce que l'automatique le code généré produit est

INSERT INTO TableName 
OUTPUT INSERTED.[ColumnName] 
VALUES(Values) 

Y at-il de toute façon de changer le t rigger ou modifier le code généré par Subsonic 2.0.3 pour permettre à cela de fonctionner?

+1

Comment avez-vous essayé d'exécuter le script de déclenchement de création? Par SSMS, ou par subsonique? Je pense que vous dites que vous essayez d'ajouter le déclencheur à travers Subsonic, mais je veux juste être sûr avant de répondre. –

+0

@Shannon J'ai ajouté le déclencheur via SSMS, j'utilise subsonic pour insérer les enregistrements dans la base de données qui échoue après que j'ai attaché le déclencheur. –

Répondre

Questions connexes