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

MS SQL Server Discussion :

TRIGGER/cohérence des données/perf !?


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 33
    Par défaut TRIGGER/cohérence des données/perf !?
    Oh dieux de l'SQL, venez à mon aide...
    Je perds confiance et ma compréhension déraille....

    voilà, j'ai toujours évité les trigger car je les pensais couteux en performance et vieillissant mal (rendant l'application rigide et difficilement maintenable...)

    Or je lis dans beaucoup de forums qu'ils sont souvent utilisé afin de garantir la cohérence métier des applis !?
    N'est ce pas le modèle (tout bien construit, avé de bô liens) qui garantis le tout ?
    Est ce vraiment moins couteux ?

    J'ai sous les yeux un projet avec de gros problèmes de perf... Je vois qu'ils ont désactivé la plupart des FK et qu'ils gères le tout par des trigger... J'aurai eu tendance à leur dire que les triggers sont donc couteux et qu'il vaut mieux laisser le moteur gérer avec de bonnes contraintes d'intégrités bien montés !?
    Mais là je doute...
    Pouvez vous m'éclairer ?

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 999
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 999
    Billets dans le blog
    6
    Par défaut
    1) les triggers sont généralement le seul moyen de réaliser des contraintes SQL de type ASSERTION, c'est à dire des contraintes vérifiant des données sur plusieurs tables à la fois. Il sont donc tout bonnement indispensable dans certains cas.

    2) un trigger est moins performant qu'une contrainte, car le trigger agit après (en fin de transaction) tandis que que la contrainte agit préventivement. La différence est importante en terme de gain !

    3) Un modèle peut lui même contenir des contraintes, notamment d'exclusion, de partition, de complétude... réalisé par des triggers (lire à ce sujet, les ouvrages sur la modélisation UML de mon confrère Christian Soutou - une prochaine édition ou j'interviens régulièrement dans le livre est sous presse)

    4) l'absence de contraintes FK et son remplacement par des déclencheurs est doublement stupide, car non seulement les FK sont plus rapides que des triggers, mais la présence de FK permet à l'optimiseur de SQL Server de simplifier certaines requêtes mal écrites, donc d'augmenter les performances (optimisation sémantique). Lisez l'article de MikeDavem sur le sujet : http://blog.developpez.com/mikedavem...e-sur-les-per/

    Autrement dit les développeurs qui vous ont fait ce projet sont au minimum des ignares, au maximum des imbéciles.... !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Membre Expert

    Homme Profil pro
    Chargé de Développement et d'Analyse de données
    Inscrit en
    Mars 2010
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé de Développement et d'Analyse de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 278
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    3) Un modèle peut lui même contenir des contraintes, notamment d'exclusion, de partition, de complétude... réalisé par des triggers (lire à ce sujet, les ouvrages sur la modélisation UML de mon confrère Christian Soutou - une prochaine édition ou j'interviens régulièrement dans le livre est sous presse)
    A +
    Peut-on avoir une idée du sommaire du livre qui est sous presse ?

    Histoire de commencer par mettre en peu de sous de côté pour l'achat

    A+
    Etienne ZINZINDOHOUE
    Billets-Articles

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 999
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 999
    Billets dans le blog
    6
    Par défaut
    Bonne remarque.... mais je sais même pas le nom du titre définitif !!!!

    Dès que j'ai l'info, je vous la livre...

    Pas encore dispo, mais... Concevoir une Base de Donnees avec Uml 2. avec Etudes et Casreels: Amazon.fr: Soutou Brouard: Livres

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  5. #5
    Membre Expert

    Homme Profil pro
    Chargé de Développement et d'Analyse de données
    Inscrit en
    Mars 2010
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé de Développement et d'Analyse de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 278
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    Bonne remarque.... mais je sais même pas le nom du titre définitif !!!!

    Dès que j'ai l'info, je vous la livre...

    Pas encore dispo, mais... Concevoir une Base de Donnees avec Uml 2. avec Etudes et Casreels: Amazon.fr: Soutou Brouard: Livres

    A +
    Ok c'est noté

    Titre : Concevoir une Base de Donnees avec Uml 2. avec Etudes et Cas réels
    Auteurs : Christian Soutou et Frédéric Brouard
    Prix : 28,40 €
    Etienne ZINZINDOHOUE
    Billets-Articles

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 33
    Par défaut
    merci ! merci ! merci !
    et je vais me faire offrir un livre en prime !

Discussions similaires

  1. [MySQL] Cohérence des données - MySQL, import massif et multiple en même temps
    Par okoweb dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 11/03/2015, 23h59
  2. [ehcache] Cohérence des données
    Par noOneIsInnocent dans le forum Persistance des données
    Réponses: 3
    Dernier message: 09/06/2011, 15h56
  3. Lier, modifier et cohérence des données issues de deux tables
    Par lawappe dans le forum Bases de données
    Réponses: 33
    Dernier message: 20/03/2009, 17h11
  4. Réponses: 3
    Dernier message: 08/10/2008, 16h34
  5. Réponses: 2
    Dernier message: 18/12/2002, 10h30

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