【问题标题】:Error using SET together with SELECT using MariaDB将 SET 与使用 MariaDB 的 SELECT 一起使用时出错
【发布时间】:2014-11-23 17:03:29
【问题描述】:

使用 PHP 和 SQL,我想使用用户定义的变量动态创建表行号,但出现以下错误:

无效查询:您的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册,以了解在 'SELECT...

附近使用的正确语法

我已经在我的网络酒店使用 phpMyadmin 测试了 SQL 代码,没有任何问题。

这里是精简到最少的 php/SQL 代码:

$sql = "SET @i=-1; SELECT @i:=@i+1 as rownum FROM my_table";
$res = mysql_query($sql);

if (!$res) {
    die('Invalid query: ' . mysql_error());
}

我错过了什么?!

【问题讨论】:

    标签: php sql mariadb


    【解决方案1】:

    您不能在一个语句中运行多个查询。但是您可以在查询中进行变量初始化。

    $sql = "SELECT @i:=@i+1 as rownum FROM my_table, (SELECT @i := -1) var_init";
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-09-24
      • 2022-01-03
      • 2023-03-10
      • 2012-03-06
      • 1970-01-01
      • 2016-11-05
      • 2021-12-06
      • 2015-07-15
      相关资源
      最近更新 更多