SQL Server Déclencheur de mise à Jour, Obtenir Uniquement les champs modifiés

Je suis conscient de COLUMNS_UPDATED, eh bien j'ai besoin d'un raccourci rapide (si quelqu'un l'a fait, je suis déjà d'en faire un, mais si quelqu'un peut sauver mon temps, je vous remercie)

J'ai besoin fondamentalement d'un fichier XML de mise à jour des valeurs de la colonne, j'en ai besoin pour la réplication but.

SELECT * from inséré me donne chaque colonne, mais j'ai besoin que ceux mis à jour.

quelque chose comme...

CREATE TRIGGER DBCustomers_Insert
    ON DBCustomers
    AFTER UPDATE
AS
BEGIN
    DECLARE @sql as NVARCHAR(1024);
    SET @sql = 'SELECT ';


    I NEED HELP FOR FOLLOWING LINE ...., I can manually write every column, but I need 
    an automated routin which can work regardless of column specification
    for each column, if its modified append $sql = ',' + columnname...

    SET @sql = $sql + ' FROM inserted FOR XML RAW';

    DECLARE @x as XML;
    SET @x = CAST(EXEC(@sql) AS XML);


    .. use @x

END

OriginalL'auteur Akash Kava | 2009-08-10