vendredi 3 octobre 2014

Exemples procédure stockée


Exemples :

Dans les exemples suivant, on travaille sur la base de données «GestionCommande »:






----Création d'une procédure stockée simple
Create procedure PS;1
as
select * from Client
where IdClient>1650
Exec PS;1
---------------------------------

----Création d'une procédure avec un seul paramètre
create proc myprocedure
@d datetime
as
select * from Facture where DateFacture=@d
exec myprocedure '08/09/2002'

create proc PS;2
(@Id int)
as
select IdClient,Nom,Prénom from Client where IdClient=@Id
Exec PS;2 @Id=1668
---------------------------------


----Création d'une procédure avec deux ou plusieurs paramètres
create proc PS;3
(@n varchar(20),
@p varchar(20))
as
select * from Client where Nom=@n and Prénom=@p
Exec PS;3 'Alaoui','Ahmed'
---------------------------------

----Procédure qui a un paramètre optionnel
Create proc PS;4
(@Id int =null)
As
If @Id is null
            Begin
                        Select * from Client
            End
Else Begin
                        Select * from Client where IdClient=@Id
            End
Go
exec PS;4 @Id=1925
exec PS;4 1668
exec PS;4
exec PS;4 @Id=default
--------------------------------




----Procédure Stockée temporaire globale
create procedure ##ProcGlobale
as
select * from Client where IdClient=1668
exec sp_executesql ##ProcGlobale
----------------------------------

----Procédure Stockée temporaire locale
create procedure #ProcLocale
as
select distinct * from Commande
exec sp_executesql #ProcLocale
---------------------------------

----Appel d'une procédure stockée
{call "GestionCommande"."dbo"."PS;1"}
{call PS;1}
{call PS;3 ('alaoui','ahmed')}
{call myprocedure ('08/09/2002')}
---------------------------------

-------Procédure avec plusieurs commandes SQL
create proc procédureM
as
begin
select * from Client
end
begin
insert into Client values(3334,'Tourabi','Amina','Casa')
end
-----appel de la procédure
{call procédureM}
--------------------------------------

------Modification d'une Procédure stockée
alter proc procédureM
as
select * from Commande
--------------------------------------

-------Suppression d'une Procédure stockée
drop proc procédureM
------------------------------------


--------Gestion des erreurs-----------
Create procedure pp
@aa int
as
if @aa>0
select * from client where IdClient=@aa
else
print'Attention le IdClient que vous avez entrer n''est pas correct!'
Exec pp -55
--------------------------------------


0 commentaires:

Enregistrer un commentaire