@variables
er ikke DECLARED
.
Enten:
DECLARE user_same BOOLEAN;
SELECT 1 INTO user_same WHERE ...
eller
SELECT @user_same := 1 WHERE ...
Endnu bedre, dette undgår behovet for variablen.
IF (EXISTS SELECT * FROM ...)
Brug heller ikke konstruktionen IN ( SELECT ... )
; det er normalt bedre at bruge WHERE EXISTS ( SELECT * FROM ... )
eller JOIN ... ON ...
.
(Der kan være flere problemer efter at have rettet dem.)