J'ai une procédure stockée que j'essaie de tester. J'essaie de la tester via SQL Management Studio. Afin d'exécuter ce test, j'entre ...
exec my_stored_procedure 'param1Value', 'param2Value'
Le dernier paramètre est un "paramètre de sortie". Cependant, je ne sais pas comment tester une procédure stockée avec des paramètres de sortie.
Comment exécuter une procédure stockée avec un paramètre de sortie ?
Le moyen le plus simple est de faire un clic droit`` sur la
procédure` dans Sql Server Management Studio**(SSMS),
et de sélectionner "Exécuter la procédure stockée...".
et ajoutez des valeurs pour les paramètres input comme demandé.
SSMS
va alors générer le code pour exécuter la procédure dans une nouvelle fenêtre de requête, et l'exécuter pour vous. Vous pouvez étudier le code généré pour voir comment il est fait.
vous pouvez le faire :
declare @rowCount int
exec yourStoredProcedureName @outputparameterspOf = @rowCount output
De http://support.microsoft.com/kb/262499
Exemple :
CREATE PROCEDURE Myproc
@parm varchar(10),
**@parm1OUT varchar(30) OUTPUT**,
**@parm2OUT varchar(30) OUTPUT**
AS
SELECT @parm1OUT='parm 1' + @parm
SELECT @parm2OUT='parm 2' + @parm
GO
DECLARE @SQLString NVARCHAR(500)
DECLARE @ParmDefinition NVARCHAR(500)
DECLARE @parmIN VARCHAR(10)
DECLARE @parmRET1 VARCHAR(30)
DECLARE @parmRET2 VARCHAR(30)
SET @parmIN=' returned'
SET @SQLString=N'EXEC Myproc @parm,
@parm1OUT OUTPUT, @parm2OUT OUTPUT'
SET @ParmDefinition=N'@parm varchar(10),
@parm1OUT varchar(30) OUTPUT,
@parm2OUT varchar(30) OUTPUT'
EXECUTE sp_executesql
@SQLString,
@ParmDefinition,
@parm=@parmIN,
@parm1OUT=@parmRET1 OUTPUT,@parm2OUT=@parmRET2 OUTPUT
SELECT @parmRET1 AS "parameter 1", @parmRET2 AS "parameter 2"
GO
DROP PROCEDURE Myproc
J'espère que cela vous aidera !