Paramètre de procédure stockée modifié
Bonjour,
J'ai un problème avec une de mes procédures stockées qui modifie un paramètre d'entrée que je lui donne en y ajoutant un caractère.
La procédure est la suivante (simple insert into) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
|
USE [DB]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[SP_AUL]
@Zone Varchar(200),
@TagName Varchar(200),
@Etat Varchar(50),
@Type Varchar(50),
@Operateur Varchar(200),
@Droit Int,
@Commentaire Varchar(200)
AS
print'DEB'
print @zone
BEGIN
INSERT INTO [DB].[dbo].[TB_CD] (
[Zone]
,[TagName]
,[Etat]
,[Type]
,[Operateur]
,[Droit]
,[Commentaire])
VALUES (
@Zone
,@TagName
,@Etat
,@Type
,@Operateur
,@Droit
,@Commentaire)
END
print 'FIN'
print @zone |
Lorsque j'exécute la procédure stockée en passant les paramètres suivants :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
USE [DB_CD1_EVENT]
GO
DECLARE @return_value int
EXEC @return_value = [dbo].[SP_AUL]
@Zone = N'Ex Forum',
@TagName = N'Test 20230420 1119',
@Etat = N'Def',
@Type = N'ALM',
@Operateur = N'User',
@Droit = 9,
@Commentaire = N'Test'
SELECT 'Return Value' = @return_value
GO |
J'obtiens la valeur 0 dans le return_value et dans les messages, je vois que mon paramètre @Zone à un caractère supplémentaire au début de la chaîne de caractère ("?").
Citation:
DEB
?Ex Forum
(1 row(s) affected)
FIN
?Ex Forum
(1 row(s) affected)
Le champ qui est donc renseigné dans la table TB_CD n'est donc pas conforme à l'attendu.
Lorsque j'exécute la fonction "insert into" sans passer par la procédure stockée, je n'ai pas ce phénomène.
Je sèche complètement sur la cause potentiel de ce comportement. C'est pour ca que je viens chercher de l'aide ^^.
Merci pour l'aide que vous m'apporterez.