1
我寫了這個功能:MySQL的 - 函數返回執行值
delimiter //
CREATE FUNCTION randomDefVal(val varchar(30), tableName varchar(30))
returns varchar(30)
BEGIN
SET @query = concat('SELECT ',val,' FROM ',tableName,' ORDER BY rand() LIMIT 1;');
SET @result = NULL;
PREPARE stmt1 FROM @query;
return (EXECUTE stmt1);
END//
但我必須在最後一行的錯誤:
SQL Error (1336): Dynamic SQL is not allowed in stored function or trigger
這表明,我不能寫「回報(EXECUTE stmt1 );」 如何返回值,這將是'EXECUTE'語句的結果?
我得到這個錯誤:**'SQL錯誤(1336):動態SQL不允許在存儲函數或觸發器**中 – hjpotter92 2013-04-25 18:47:42