mysqli查询获取语法错误,但phpmyadmin工作

时间:2014-12-10 17:46:00

标签: php mysql mysqli phpmyadmin

虽然以下查询适用于phpmyadmin,但当我使用mysqli-> query()时,会出现语法错误

START TRANSACTION;
SELECT Value INTO @Increment FROM SystemConfiguration WHERE `Key` = 'POIncrement' FOR UPDATE;
UPDATE SystemConfiguration SET Value = Value + @Increment WHERE `Key` = 'POID';
COMMIT;

语法错误消息:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT Value INTO @Increment FROM SystemConfiguration WHERE `Key` = 'POIncrement' at line 2

mysqli准备查询并添加内容吗?

1 个答案:

答案 0 :(得分:2)

$sql = <<<SQL
START TRANSACTION;
SELECT Value 
    INTO @Increment 
    FROM SystemConfiguration 
        WHERE `Key` = 'POIncrement' FOR UPDATE;
UPDATE SystemConfiguration 
    SET Value = Value + @Increment 
    WHERE `Key` = 'POID';
COMMIT;
SQL;

$res = mysqli_multi_query($connection, $sql);