Я новичок в MySQL и пытаюсь перенести некоторые хранимые процедуры из SQL Server.Я создал базовую хранимую процедуру с передачей параметров в MySQL.
Хранимая процедура просто принимает параметр и выполняет «отбрасывание, если существует» на основе предоставленного параметра.
При запуске в MySQL выдается ошибка, приведенная ниже.
Похоже, что параметр, переданный 'mytablename' в хранимую процедуру, выполняется как часть оператора вместо параметра.
Любой совет?
Оператор SQL:
call mydb.spDroptableifexist('customerdata');
Результаты:
0 row(s) affected, 1 warning(s): 1051 Unknown table 'mydb.mytablename'
Это хранимая процедура:
USE `mydb`;
DROP procedure IF EXISTS `spDroptableifexist`;
DELIMITER $$
USE `mydb`$$
CREATE DEFINER=`root`@`localhost` PROCEDURE `spDroptableifexist`(IN mytablename VARCHAR(255))
BEGIN
drop table if exists mytablename;
END$$
DELIMITER ;