MySQL中的多个动态查询

时间:2017-01-12 14:19:13

标签: php mysql stored-procedures

我想用PHP执行约100 Update / Delete动态查询并发送到MySQL存储过程。

目前,我可以使用此代码(如

)在存储过程中执行单个动态查询
CREATE PROCEDURE `updateBill`(IN `queryIs` VARCHAR(10000))
BEGIN
    SET @t1 = queryIs;
    PREPARE stmt3 FROM @t1;
    EXECUTE stmt3;
    DEALLOCATE PREPARE stmt3;
END

但是这只能执行以;终止的单个查询。但我有大约100个动态查询,并希望像

那样执行它们
update abc set a=1, b=0 where c=5;
update abc set a=7, b=3 where c=6;
delete from abc where c = 3;
update abc set a=9, b=2 where c=8;
update abc set a=2, b=1 where c=12;
delete from abc where c = 10;

以上所有查询都是从客户端数据发送的PHP数据。我不想快速创建与服务器的连接并逐个执行上面的查询,但我只想在存储过程参数中的单个字符串上发送上述查询,然后从中创建动态查询,然后执行上述所有操作。

1 个答案:

答案 0 :(得分:0)

我的意图并不是100%清楚 但似乎你必须在你的程序中进行字符串处理,如果你想预测每一种可能的情况,这是很多工作。