Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server
MS SQL-Server Forum Microsoft SQL-Server. Avant de poster -> FAQ SQL-Server, Tutoriels SQL-Server
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/01/2012, 15h49   #1
Invité de passage
 
Inscription : mars 2005
Messages : 33
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 33
Points : 3
Points : 3
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 ?
Liloye est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2012, 18h54   #2
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 959
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 10 959
Points : 17 791
Points : 17 791
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
Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
* * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *
SQLpro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/01/2012, 12h40   #3
Membre Expert
 
Homme Etienne ZINZINDOHOUE
Ingénieur développement
Inscription : mars 2010
Messages : 1 139
Détails du profil
Informations personnelles :
Nom : Homme Etienne ZINZINDOHOUE
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Ingénieur développement
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : mars 2010
Messages : 1 139
Points : 2 470
Points : 2 470
Envoyer un message via Yahoo à zinzineti
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
zinzineti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/01/2012, 13h01   #4
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 959
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 10 959
Points : 17 791
Points : 17 791
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... http://www.amazon.fr/Concevoir-Base-Donnees-Etudes-Casreels/dp/2212134134
A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
* * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *
SQLpro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/01/2012, 13h23   #5
Membre Expert
 
Homme Etienne ZINZINDOHOUE
Ingénieur développement
Inscription : mars 2010
Messages : 1 139
Détails du profil
Informations personnelles :
Nom : Homme Etienne ZINZINDOHOUE
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Ingénieur développement
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : mars 2010
Messages : 1 139
Points : 2 470
Points : 2 470
Envoyer un message via Yahoo à zinzineti
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
zinzineti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/01/2012, 09h40   #6
Invité de passage
 
Inscription : mars 2005
Messages : 33
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 33
Points : 3
Points : 3
merci ! merci ! merci !
et je vais me faire offrir un livre en prime !
Liloye est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h36.


 
 
 
 
Partenaires

Hébergement Web