IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement SQL Server Discussion :

Trigger asynchrone sur insertion ligne


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2009
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2009
    Messages : 86
    Par défaut Trigger asynchrone sur insertion ligne
    Bonjour,

    Mon besoin : copier chaque nouvelle ligne insérée (d'une table source) dans une autre table (cible) en évitant tout perturbation sur les mises à jour de la table source

    Idée 1 : mettre un trigger sur ma table source qui insert le nouvel enregistrement dans ma table cible
    Inconvénient : on est dans du synchrone - trigger transactionnel donc si pb sur le trigger alors pb sur l'insert dans la table source (+ pb de perf possible également)

    Idée 2 : utiliser le service broker
    trigger sur table source qui dépose nouvel ligne dans une file et la file déclenche un ps qui met cette ligne dans la table cible

    Idée 3 : on m'a parlé d'utiliser une vue sur ma table source et de mettre un trigger sur cette vue afin d'insérer toute nouvelle ligne dans ma table cible

    Quelle est à votre avis la meilleure solution pour répondre à mon besoin ?
    (autres idées que celles ci-dessus sont les bienvenues)

    Merci

    Franck

  2. #2
    Membre éprouvé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2011
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 118
    Par défaut
    Bonjour,

    Ca va dépendre de la façon dont vouz gérez la table cible. Par exemple est-ce que les données sont purgées après traitement ou un certain temps où non.

    Vous avez également la réplication transactionnelle qui permet de faire cela, mais la mise en place et la maintenance est assez lourde.

    Vous pouvez utiliser une colonne de type ROWVERSION pour déterminer les nouvelles lignes insérées et lancer un traitement planifié pour ajouter les nouvelles lignes dans la table cible.

  3. #3
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2009
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2009
    Messages : 86
    Par défaut
    Christophe,

    Merci pour la réponse. Je vais regarder avec rowversion.

    Franck

  4. #4
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Par défaut
    Bonjour

    comme l'a indiqué SQLDev, il serait utile d'en savoir un peu plus...

    Néanmoins, vous pouvez également regarder si la fonctionnalité CHANGE DATA CAPTURE pourrait répondre à votre besoin. Elle à l'avantage d'être totalement asynchrone.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. trigger "update sur insert" avec insertion multiple
    Par harf18 dans le forum Développement
    Réponses: 4
    Dernier message: 18/05/2009, 14h46
  2. Trigger asynchrone sur un composant telerik
    Par Cartman.inc dans le forum ASP.NET
    Réponses: 4
    Dernier message: 19/11/2008, 12h24
  3. Trigger sur plusieurs lignes
    Par Jérôme Lambert dans le forum Développement
    Réponses: 2
    Dernier message: 30/11/2006, 23h28
  4. TRIGGER sur INSERT
    Par Jean_Benoit dans le forum Forms
    Réponses: 7
    Dernier message: 22/11/2006, 13h03
  5. TRIGGER avec inserted + UPDATE sur INSERTED
    Par shaka84 dans le forum Développement
    Réponses: 3
    Dernier message: 12/04/2006, 10h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo