我在MySQL 5.1.40中创建了一个需要运行大量SQL语句的存储过程。
经常重复的一个特定语句会清除临时表:
DELETE FROM w_projection_temp WHERE user_id = uid;
uid 变量是SP的IN参数。
是否可以将整个SQL语句分配给另一个变量,然后以某种方式运行(计算?)新变量?例如:
DECLARE clear_temp VARCHAR;
SET clear_temp = 'DELETE FROM w_projection_temp WHERE user_id = uid;'
MTIA
答案 0 :(得分:2)
PREPARE clear_temp FROM "DELETE FROM w_projection_temp WHERE user_id = ?"
EXECUTE clear_temp USING uid;
DEALLOCATE PREPARE clear_temp;