Oczywiście, że tak.
Co jeśli in_var
jest równe ' UNION SELECT password from admins --
?
Aby tego uniknąć, nie powinieneś używać kultu cargo przygotowane oświadczenie, ale prawdziwe, zastępując zmienną symbolem zastępczym.
SET @query = CONCAT("SELECT * FROM my_table WHERE my_column = ? LIMIT 1;");
PREPARE stmt FROM @query;
EXECUTE stmt USING @in_var;