簡體   English   中英

MYSQL變量在PHP查詢

[英]MYSQL variable In php query

我試圖在一個查詢中查詢多個mysql語句,但失敗了。

$testq ="";
        $testq .= mysql_query("SET @@group_concat_max_len = 5000");
        $testq .= mysql_query("SET @sql = NULL");
        $testq .= mysql_query("SELECT   GROUP_CONCAT(DISTINCT
                    CONCAT(
                      'MAX(IF(property_name = ''',
                      property_name,
                      ''', value, NULL)) AS ',
                      property_name
                    )
                  ) INTO @sql FROM properties");
        $testq .= mysql_query("SET @sql = CONCAT('SELECT item_id, ', @sql, ' FROM properties GROUP BY item_id')");
        $testq .= mysql_query("PREPARE stmt FROM @sql");
        $testq .= mysql_query("EXECUTE stmt"); 
        $da = mysql_query($testq, $dbconnect);          
        while($rt = mysql_fetch_assoc($da){
            //print
             }

錯誤是:警告:mysql_fetch_assoc()期望參數1為資源,在第24行的C:\\ Users ......中給定布爾值。如何執行此查詢並在表中打印結果?

出於安全原因,PHP中的MySQL擴展不支持mysql_query多查詢。 您不應該再使用MySQL,請使用MySQL i

您應該使用UNION或類似的方式來連接查詢。 如果只想進行多重查詢,則應在MySQL i庫中使用mysqli_multi_query

然后語法必須是另一種。 必須在一個函數中將查詢作為一個字符串提交,如下所示:

$mysqli->multi_query("SELECT * FROM table; TRUNCATE table; DROP table;");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM