2014-12-20 42 views
0

我試圖將數據庫從一臺服務器移到另一臺,都使用不同的MySQL和phpMyAdmin版本。一切順利,但在某些頁面上有錯誤說:有沒有辦法導出MySQL數據庫以避免語法錯誤?

SQL/DB Error -- [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 'range, p.name, p.description, p.height, p.width, p.depth, p.active, pc.product_c' at line 1] 

我找不到任何在SQL文件中會出錯的東西。這是錯誤的鏈接(正如你所看到的,它總體上工作和讀取,一些頁面有錯誤)。

Link to Test Version

Link to Screenshot of Export Settings

我的問題是:有沒有從這個舊的數據庫中導出SQL所以它會工作的方法嗎?它完全在以前的網站上工作,所以我假設這些是兼容性問題。

回答

1

從錯誤你得到

right syntax to use near range, p.name, p.description

range是保留關鍵字http://dev.mysql.com/doc/mysqld-version-reference/en/mysqld-version-reference-reservedwords-5-5.html

所以在查詢中,您需要使用反引號該列名

`range` 
+0

我看到。因此,爲了使其工作,我需要替換SQL文件中的每個「範圍」。糾正我,如果我錯了,但我根本不需要修改.php文件,是嗎? –

+0

你的查詢寫在哪裏?如果它在PHP文件上,那麼你需要在那裏改變。 –

+0

所有你真正需要的是反引號 - 但最好避免使用表/列標識符中的保留字 – Strawberry

相關問題