我想动态创建临时表。我将列名作为参数传递给存储过程。
示例:
DELIMITER $$
create procedure sptemp(IN nm varchar(50))
BEGIN
SET @q = CONCAT('CREATE TEMPORARY TABLE temptable // Error occuring here @q
SELECT DISTINCT ', nm ,' AS Col FROM table1');
PREPARE d FROM @q;
EXECUTE d;
DEALLOCATE PREPARE d;
END$$
DELIMITER ;
错误:语法错误,意外'@',期待':'