在函数中运行更新查询 时间:2015-08-19 作者:Zoe Epix 我需要在函数中运行以下命令,如果满足某些条件,它会更新我的数据库。我无法让它工作,我只能假设它是因为一开始的“SET@newnum”。我已经回显了我的查询,并通过PHPMyAdmin对其进行了测试,结果很好。有人知道如何正确执行此操作吗?global $wpdb; $sql = "SET @newnum = 0; Update wp_esp_ticket tix INNER JOIN ( SELECT et.TKT_ID FROM wp_esp_ticket et INNER JOIN wp_esp_datetime_ticket edtt on edtt.TKT_ID = et.TKT_ID INNER JOIN wp_esp_datetime edt on edtt.DTT_ID = edt.DTT_ID WHERE edt.EVT_ID = ".$courseBookID." ORDER BY edt.DTT_EVT_start ASC ) b ON tix.TKT_ID = b.TKT_ID SET tix.TKT_order = @newnum:=@newnum + 1"; $wpdb->query($sql); 1 个回复 SO网友:gpd 正如David所指出的,wpdb::query() 不允许多次呼叫。是的,这是因为"SET @newnum = 0;" 在实际查询之前。这种查询根本不可能,因为后端会阻止这种查询,以防止SQL注入攻击。除此之外,我在博客中描述的技术提供了一个不同的用例,它似乎与您想要在这里实现的目标无关。也许你应该更确切地知道你想要你的“SET”子句做什么?[...] SET tix.TKT_order = @newnum:=@newnum + 1"; 查询的预期结果是什么? 结束 文章导航