|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : mars 2011 Messages : 4 ![]() |
Bonjour,
Afin de ne pas mettre le minimum de code dans mon interface .net j'ai décidé de déclarer des triggers sur mes tables. Je me pose alors une question en terme d'optimisation : trigger vs procédure stockée ? Grosso modo est ce que si je déplace la majorité de mon code dans une procédure je gagne du temps d'exécution ? Toujours dans un souci d'optimisation, vaut il mieux que je mette mes executions annexes dans des procédures avec variables output ou dans des fonctions ? Je sais que cela fait beaucoup de questions.... Merci d'avance de vos réponses. |
|
|
00
|
|
|
#2 | ||||
![]() ![]() ![]() Nicolas SouquetAdministrateur de base de données Inscription : janvier 2005 Messages : 4 669 ![]() |
Bonjour,
Citation:
Les triggers sont là pour implémenter une contrainte d'intégrité des données complexe liée au métier de votre entreprise. Citation:
un trigger DML s'exécute lorsqu'une requête tente de modifier les données d'une table. Il ne peut prendre et fournir aucun paramètre, et son exécution est automatique. Donc par exemple : si vous voulez ajouter une commande pour un client, vous allez utiliser une procédure stockée. Si en revanche vous voulez automatiquement ajouter une commande à un fournisseur lorsque la quantité en stock d'un produit passe en dessous d'un seuil, vous utiliserez un peut-être un trigger. Enfin, pour en revenir aux règle métier d'une entreprise, vous pouvez aussi utiliser des contraintes de domaine (CHECK). Celles-ci peuvent être implémentées à l'aide d'une fonction SQL ou CLR. Citation:
Pour vous en convaincre, je vous invite à lire l'article de SQLPro sur ce sujet (PDF). Citation:
Ensuite pour les procédures stockées, cela dépend de ce que vous entendez par "annexe". Enfin les fonctions ont un certain nombre de limitations. Soyez plus précis dans votre contexte, en donnant des exemples concrets si vous voulez une réponse moins générale. @++
__________________
En bases de données relationnelles SQL, il n'y a ni tableaux, ni enregistrements, ni champs: il y a des tables, des lignes et des colonnes. Blog | Profil| Consulter ou télécharger les fichiers d'aide de SQL Server, des versions 2000 à 2012 |
||||
|
10
|
Copyright © 2000-2012 - www.developpez.com