Académique Documents
Professionnel Documents
Culture Documents
Procédures stockées
• Une PS est un objet de la base de données SqlServer qui effectue des tâches
souvent récurrentes.
• :
• Simplifier : un même code qui doit souvent être effectuée peut être enregistré afin d’être appelé
rapidement
• Amélioration des performances : les opérations peuvent être exécutées du côté du serveur de base de
données et envoyées directement prête à l’emploi par l’utilisateur qui va utiliser ces données. Par ailleurs,
cela va réduire les échanges entre le client et le serveur
• Sécurité : des applications peuvent avoir accès uniquement aux procédures stockées, sans avoir accès aux
données des tables directement, et/ou s’assurer que l’accès aux données soit toujours effectué de la même
manière
As
As
As
// le mot clé output signifie que ces variables seront utilisées comme
variables de retour
• Modification
Alter procedure [bD].dbo.nom_procedure_à_modifier
As
[BLOC INSTRUCTIONS SQL]
• Suppression
drop procedure dbo.nom_procedure
• Exécution
Exec dbo.nom_procedure liste_paramètres
• Créer une procédure qui donne toutes les informations d’un étudiant donné
create procedure PEtudiant2(@codeCNE varchar(20))
as
select * from dbo.etudiant
where CNE = @codeCNE
go
declare @x varchar(20)
set @x = ‘A1025’
exec DBName.dbo.PEtudiant2 @x 37
b) Exécution:
• Si la fonction est de type scalaire, l’exécution est comme suit:
print DBName.dbo.nom_fonction(arguments)
DDL DML
table ‘inserted’
insertion ==copie de la table où
on veut insérer
table ‘deleted’
==copie de la table où
Opération/action Suppression
on veut faire la
suppression
Modification
NI © 2020-2021 SI-LST INFO 48
Propriétés trigger
• Exemple:
• Exemple:
• Si aucun code correspondant à l’action n’est inclus dans le corps du trigger, l’action ne sera pas
effectuée sans aucune annulation
• Exemple:
• Après, exécution des triggers ‘after’ (tables temporaires contiennent nouvelles valeurs)
• Si d’autres instructions dans le trigger ‘instead of’ , elles seront exécutées à la fin des ‘after’ sauf en
cas d’annulation.
• Exemple:
Procédure pour
action: insert, Le commit valide l’action qui déclenchera le
delete, update
trigger : insert, update, delete + exécutera le
code T-SQL associé au trigger créé.
commit Rollback
• La fonction print n’est pas la seule à avoir la possibilité d’afficher des messages; nous
avons aussi la fonction return(expression) , raiserror(expression),
formatmessage(expression).
• Ces fonctions permettent des possibilités plus que le print mais avec des conditions
comme illustré avec les exemples suivant: