我試圖執行以下查詢:SQL查詢不會在MySQL 5.5.16工作
$query = "SELECT O. * AS NUM FROM (ab_order O)
LEFT JOIN ab_user U ON (O.id_user=U.id)
WHERE O.id IN (SELECT OT.id_ab_order FROM ab_order_transaction OT
LEFT JOIN ab_transaction T ON (OT.id_ab_transaction = T.id)
LEFT JOIN ab_user U ON (T.id_user = U.id)
WHERE T.validated = 1 {$condTrans}) {$condOrder}
ORDER BY {$orderCol} LIMIT $from, $numRecords ";
$queryDB = $DB->queryExec($query);
在直播服務器:
- 它的工作原理與MySQL 3.3.10版本。
- PHP版本5.2.17。
但我需要使用localhost:
- XAMPP for linux的,V 1.7.7
- PHP 5.3.8
- MySQL版本5.5.16。
本地主機上,它說:
MySQL error: 1064 : 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 'AS NUM
FROM (ab_order O)
LEFT JOIN ab_u' at line 1.
然後任何更簡單的方法uprgrade直播服務器Mysql數據庫?
我不能肯定,但'FROM(ab_order O)'似乎奇怪的語法我。你可以嘗試去除括號嗎?沒有括號的 – nettle
仍然不起作用... – vetrnicek
一般來說,您應該儘量將您的開發環境設置得儘可能接近實時環境。當你使用MySQL 5進行開發並部署到MySQL 3時,測試和調試要困難得多 - 就像將文檔另存爲MS Word 2008,然後嘗試在Word 2000中打開它一樣。 –