Bonjour

Je développe une proc stock et je suis confronté à un sousic de conversion de type que je ne comprends pas.

Voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
DECLARE 	@Localisa VARCHAR(10),
	@LocalRech VARCHAR(5000),
	@Portee INT,
	@SQL VARCHAR(8000)
 
SET @Localisa = '45'
SET @Portee = 8
SET @LocalRech = CASE @Portee
	WHEN 1 THEN 'A.Localisation in (' + @Localisa + ')'
	WHEN 5 THEN (SELECT Id_Commune FROM Opila_Localisation 
			WHERE Numero = (
			SELECT Numero FROM Opila_Localisation WHERE Id_Commune = @Localisa))
	WHEN 6 THEN (SELECT Id_Commune FROM Opila_Localisation 
			WHERE Region = (
			SELECT Region FROM Opila_Localisation WHERE Id_Commune = 45))
	WHEN 8 THEN '1 = 1'
END
SELECT @LocalRech
Et là il me mets ce message d'erreur
Erreur de syntaxe lors de la conversion de la valeur varchar '1 = 1' vers une colonne de type de données int.
J'ai le même genre de souci quand @Portee est à 1. Je ne comprends pas pourquoi il veut convertir ça en INT.

Pouvez vous m'aider ?