首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在phpmyadmin中工作的查询不适用于php页面?

问在phpmyadmin中工作的查询不适用于php页面?
EN

Stack Overflow用户
提问于 2014-11-07 05:21:01
回答 3查看 131关注 0票数 0

我已经在phpmyadmin中测试了这个查询&它准确地返回了我所看到的内容,for...it复制了row1,并将标题更新为重复。

代码语言:javascript
复制
$sql = "CREATE TEMPORARY TABLE  tmp 
        SELECT  `unit_id`,
                    `title`,
                    `status_id`,
                    `category_id`,
                    `tags`,
                    `access_id`
        FROM        unit_genData 
        WHERE       `unit_id`='1';
        ALTER TABLE tmp 
        DROP COLUMN `unit_id`;
        UPDATE      tmp 
        SET         `title` = 'DUPLICATE';
        INSERT INTO unit_genData 
        SELECT      0,tmp.* 
        FROM        tmp;
        DROP TABLE  tmp;";

然后我去把它添加到php页面,然后.

You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'ALTER TABLE tmp DROP COLUMNunit_id; UPDATE tmp ' at line 10

我为什么要犯这个错误?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-11-07 05:25:21

使用mysqli_multi_query()执行多个查询。

代码语言:javascript
复制
$sql = "CREATE TEMPORARY TABLE  tmp 
    SELECT  `unit_id`,
                `title`,
                `status_id`,
                `category_id`,
                `tags`,
                `access_id`
    FROM        unit_genData 
    WHERE       `unit_id`='1';
    ALTER TABLE tmp 
    DROP COLUMN `unit_id`;
    UPDATE      tmp 
    SET         `title` = 'DUPLICATE';
    INSERT INTO unit_genData 
    SELECT      0,tmp.* 
    FROM        tmp;
    DROP TABLE  tmp;";

$mysqli->multi_query($sql);
票数 1
EN

Stack Overflow用户

发布于 2014-11-07 05:25:49

默认情况下,PHP在一个查询中禁用多个语句。

要么分别运行这两个语句,要么使用mysql_multi_query。

http://php.net/manual/en/mysqli.quickstart.multiple-statement.php

(问题没有指定使用了哪个MySQL接口。)

请注意,如果您的代码存在SQL注入漏洞,那么启用每个查询的多个语句可能会打开整船邪恶的大门.阿拉-鲍比桌子http://xkcd.com/327/。

票数 0
EN

Stack Overflow用户

发布于 2014-11-07 05:27:44

如果您出于某种原因使用mysql函数,则将CLIENT_MULTI_STATEMENTS作为mysql_connect的第5个参数来允许查询中的多个语句。

更多信息,here。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26794619

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档