Je suis un nouvel utilisateur de Interbase.
J'aimerai savoir comment executer une procédure stockée avec un corps dynamique comme sous SQL Server.
Voici par exemple le code que je tape sous SQL server:
Create procedure usp_Card_Select(@Id Int=NULL,@Name varchar=NULL)
AS
declare @Query as varchar(500)
set @Query='select Car_Id, Car_Name, Car_Amount from Card '
set @Qeury=@Query + 'Where Car_State=1 '
if not @Id is null set @Query=@Query + ' and Id=' + @Id
if not @Name is null set @Query=@Query + ' and Car_Name=' + @Name
exec @Query
Go
ici je déclare une chaine qui contient la requete SQL à executer.
Cette chaine change en fonction de la valeur du paramète @Id et/ou du paramètre @Name.
Si un paramètre est défini, la requète change en fonction de ce paramètres. Si aucun paramètre n'est défini on renvoi tous les enregistrements.
Enfin on execute la chaine SQL.
Merci pour votre contribution.
Brisky






Répondre avec citation
Partager