我有两个查询,我想从我的php脚本同时运行。一个是更新查询,另一个是选择查询。 这是更新查询
UPDATE stock_list SET qty=qty -1 where itembarcode="BRMS01";
这是我的选择查询
SELECT itembarcode,description,weight,making FROM stock_list WHERE itembarcode="BRMS01"
我试过像
这样的东西UPDATE stock_list SET qty=qty -1 AND SELECT itembarcode,description,weight,making FROM stock_list WHERE itembarcode="BRMS01";
我得到的错误就像 - (
您的SQL语法有错误;检查手册 对应于您的MySQL服务器版本,以便使用正确的语法 靠近'SELECT itembarcode,description,weight,制作FROM stock_list WHERE itembarcode ='在第1行
) 感谢任何帮助。谢谢你:))
答案 0 :(得分:2)
交易是你的朋友。
如果你这样做
START TRANSACTION;
UPDATE stock_list SET qty=qty -1 where itembarcode='BRMS01';
SELECT itembarcode,description,weight,making FROM stock_list WHERE itembarcode='BRMS01';
COMMIT;
这将执行您的更新操作,然后同时运行您的选择查询(而不是一个,然后另一个。
编辑:
澄清如何为OP的情况编写
mysqli_query($con,"START TRANSACTION; UPDATE stock_list SET qty=qty -1 where itembarcode='BRMS01'; SELECT itembarcode,description,weight,making FROM stock_list WHERE itembarcode='BRMS01'; COMMIT; ");
这是您需要运行的基于事务的查询。一次执行,而不是多次。