我有两个MySQL查询要结合,它可以直接输入到phpmyadmin中。 我得到这些查询是这样的:PHP中的多个SQL查询组合给出错误
$sqlCombine = $sqlStart.";".$sqlStartBefore;
$conn->query($sqlCombine);
echo $sqlCombine;
回声给出了以下几点:
UPDATE rn_slots_availability SET slot_avail_noclean = slot_avail_noclean -1 WHERE hotel_id = '5' AND room_type_id = '6' AND slot_date = '2014-09-05';UPDATE rn_slots_availability SET slot_avail_clean = slot_avail_clean -1 WHERE hotel_id = '5' AND room_type_id = '6' AND slot_date = '2014-09-06'
复制/粘贴到phpMyAdmin用得好好的,直接执行不,提供了以下错误:
Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UPDATE rn_slots_availability SET slot_avail_clean = slot_avail_clean -1 WHERE ho' at line 1
这是第二个查询,但我不明白为什么?
您不能通过在PHP中用';'分隔它们来执行多个查询。我们也不知道你用于MySQL交互的界面,所以没有人能提出解决方法或适当的方法。 – 2014-09-05 10:13:10
@ N.B .:为了更精确一点,你不能使用'mysql'扩展名 - 但'mysqli'具有'mysqli :: multi_query'。 – CBroe 2014-09-05 10:15:10
@CBroe - 我知道。请阅读我评论的其余部分,我完全知道如果多查询,但以这种方式发布查询在我看来并不好。因此,如果我知道OP使用的界面,我会建议一种不同的,更好的方法。 – 2014-09-05 10:18:23