@variables
zijn niet DECLARED
.
Ofwel:
DECLARE user_same BOOLEAN;
SELECT 1 INTO user_same WHERE ...
of
SELECT @user_same := 1 WHERE ...
Beter nog, dit vermijdt de noodzaak van de variabele.
IF (EXISTS SELECT * FROM ...)
Gebruik ook niet de constructie IN ( SELECT ... )
; het is meestal beter om WHERE EXISTS ( SELECT * FROM ... )
. te gebruiken of JOIN ... ON ...
.
(Er kunnen meer problemen zijn nadat deze zijn opgelost.)