我對我的數據庫使用mysql workbench 6.2。在mysql工作臺中使用declare @語法錯誤意外6.2
我創建過程來執行的查詢字符串,但它錯誤變量「語法錯誤意外」「聲明@str VARCHAR(2000)」。我嘗試在變量中刪除'@',但它在'行中不起作用PREPARE stmt FROM str;'。它通知錯誤 「意外海峽」
這是我的代碼:
CREATE DEFINER=`root`@`localhost` PROCEDURE `new_procedure`()
BEGIN
declare @str varchar(2000) DEFAULT '';
set @str = 'select * from category;';
PREPARE stmt FROM @str;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
END
只是刪除'@'不會幫助,預處理語句必須使用會話變量。 (請參閱下面的改進答案) – Uueerdo