这是我的问题-
$q = "CREATE TEMPORARY TABLE tmp SELECT * from category c WHERE category_id IN (SELECT category_id FROM category_to_store WHERE store_id = '".(int)$from_store_id."');
ALTER TABLE tmp drop category_id;
INSERT INTO category SELECT 0,tmp.* FROM tmp;
SET @last_id_in_category := LAST_INSERT_ID();
select @last_id_in_category;
DROP TABLE tmp;"
mysql_query($q);我在执行时会遇到这个错误。
错误:您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以获得在“ALTER tmp drop category_id”附近使用的正确语法;在第2行“错误号: 1064”处插入“选择0”类别
但是,当我在数据库中直接运行查询时,我不会收到任何错误。请救救我!
发布于 2012-04-25 13:08:30
从php docu on `mysql_query‘
mysql_query()向当前活动数据库发送唯一查询(不支持多个查询).
因此,基本上将查询拆分为多个`mysql_query‘调用,每个调用都有一个查询,您应该没事。
https://stackoverflow.com/questions/10316243
复制相似问题