Sí, claro.
¿Qué pasa si in_var
es igual a la contraseña de ' UNION SELECT password from admins --
?
Para evitar eso, no debe usar un culto de carga declaración preparada pero real, sustituyendo su variable con un marcador de posición.
SET @query = CONCAT("SELECT * FROM my_table WHERE my_column = ? LIMIT 1;");
PREPARE stmt FROM @query;
EXECUTE stmt USING @in_var;