在mysql_query中触发多个查询

时间:2013-09-28 07:19:41

标签: mysql

$updateStock = "UPDATE opening SET qtyUsed = 1000 WHERE openingId = 1 ; UPDATE purchase SET qtyUsed = qtyUsed + 25 WHERE purchaseId = 1";

$updateAllStock = mysql_query($updateStock);

这给出了错误:Data Not InsertedYou 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 purchase SET qtyUsed = qtyUsed + ' at line 3

3 个答案:

答案 0 :(得分:0)

mysql_query一次只能执行一个查询。你需要执行两次mysql_query。

而不是mysql扩展使用mysqli。使用mysqli,您可以执行多个查询。 http://www.php.net/manual/fr/mysqli.multi-query.php

答案 1 :(得分:0)

你可以使用mysqli_query() 它允许多个语句。小心。

答案 2 :(得分:0)

您正在发送两个查询,因此您必须两次查询数据库。在mysqli中支持多个查询,但我强烈建议不要使用此功能,因为这会增加SQL注入攻击的可能性。

$updateStock = "UPDATE opening SET qtyUsed = 1000 WHERE openingId = 1";
$updatePurchase = "UPDATE purchase SET qtyUsed = qtyUsed + 25 WHERE purchaseId = 1";

$updateAllStock = mysql_query($updateStock);
$updateAllPurchase = mysql_query($updatePurchase);