[SQL SERVER 2005] Renvoyer une valeur
Salut,
Je veux renvoyer un string à partir d'une procédure stockée. Je fais ceci :
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
|
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[CONVERT_ID] (@ID int, @Choix int, @Valeur varchar(50) OUTPUT)
AS
-------------------------------
-- Convertir un ID en string --
-------------------------------
-- Pays --
If @Choix=1
Begin
Set @Valeur=(Select Nom From tbPays Where IDPays=@ID)
End
-- TVA --
If @Choix=2
Begin
Set @Valeur=(Select Nom From tbTVA Where IDTVA=@ID)
End
-- Langue --
If @Choix=3
Begin
Set @Valeur=(Select Nom From tbLangues Where IDLangue=@ID)
End
-- Devise --
If @Choix=4
Begin
Set @Valeur=(Select Nom From tbDevises Where IDDevise=@ID)
End
Return @Valeur |
Mais voici l'erreur renvoyée :
Msg 245, Niveau 16, État 1, Procédure CONVERT_ID, Ligne 32
Échec de la conversion de la valeur varchar « - Inconnu - » en type de données int.
Donc il cherche à convertir @Valeur en int... Pourquoi ? 8O