我有一个问题可以在 PHP 中解决,但我想在 MySQL 中解决。基本我有一个存储函数,TASK_ASSIGN(id_task,operator)
。
我还有一个函数SELECT exec FROMtask
。这些任务有一个 exec 列,在里面我保存 TASK_ASSIGN(id_task, operator)
格式来执行。
如果可能的话,我想在存储函数或过程中执行。有人可以帮助我吗?
最佳答案
解决方案是一个具有以下来源的存储过程:
BEGIN
DECLARE $execute_function VARCHAR(100);
-- Get the waiting function for execution
SELECT `exec` INTO $execute_function FROM `tasks` WHERE `id_task` = '1';
-- Create a session variable with the complete select
SET @query = CONCAT("SELECT ",$execute_function," AS result");
-- Execute the custom query
PREPARE execute_query FROM @query;
EXECUTE execute_query;
DEALLOCATE PREPARE execute_query;
END;
感谢wchiquito建议准备好的陈述。
关于mysql - 如何执行 MySQL 中变量内的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29435589/