Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

mysqli múltiplas consultas - variável definida produz erro booleano/como pular isso?


É porque o mysql_query A função aceitará apenas uma consulta, mas você deu duas, separadas por um ponto e vírgula. Tente também:

  1. Executando cada consulta separadamente (não sei se isso funcionará):
    mysql_query( "SET @N=-1" );
    mysql_query( "SELECT `id`, (@N:[email protected]+1) AS `mycount` FROM `mydb`" );
    

  2. Usando mysqli com a multi_query função (ou um PDO equivalente, se houver).

Para responder à sua pergunta atualizada:verifique a página de manual do PHP para multi_query. Acho que você vai querer usar mysqli::next_result . Algo assim, usando o estilo procedural:
mysqli_multi_query($link, $query);
mysqli_next_result($link);

if ($result = mysqli_store_result($link)) {
    while ($row = mysqli_fetch_row($result)) {
        printf("%s\n", $row[0]);
    }
    mysqli_free_result($result);
}