mysql插入-选择语法错误
这是我的疑问-mysql插入-选择语法错误,mysql,syntax,Mysql,Syntax,这是我的疑问- $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
$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 TABLE tmp drop category_id”;插入到类别中选择“0”
第2行错误编号:1064
但当我直接在数据库中运行查询时,并没有得到任何错误。
请帮帮我 从“mysql\u查询”上的
mysql\u query()向当前活动的数据库发送一个唯一查询(不支持多个查询)
因此,基本上将您的查询拆分为多个“mysql\u query”调用,每个调用一个查询,您应该不会有问题。来自“mysql\u query”
mysql\u query()向当前活动的数据库发送一个唯一查询(不支持多个查询)
因此,基本上将查询拆分为多个调用“mysql\u query”,每个调用使用一个查询,这样就可以了