萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> mysql導入數據庫錯誤#1064提示解決方法

mysql導入數據庫錯誤#1064提示解決方法

文章總結了在mysql導入數據庫時出現錯誤#1064 You have an error in your SQL syntax提示,我們這和數據庫沒什麼關系大多是sql語句問題,或是數據庫版本不兼容的問題。

當使用SQLyog導出dedecms的數據庫為xxx.sql文件時,會報幾個錯誤:

錯誤1064年在線21 : 您有一個錯誤在您的SQL句法。 檢查手工t帽子對應於您的MySQL服務器版本為正確的句法,用途近‘DEFAULT CHARSET=utf8在線

第一是,USING BTREE 錯誤。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 ‘USING BTREE,UNIQUE KEY `pkey` (`pkey`) USING BTREE 。。。

解決辦法:

 代碼如下 復制代碼

UNIQUE KEY `pkey` (“pkey“) USING BTREE ,修改為

UNIQUE KEY `pkey` USING BTREE  (“pkey“) ,

即把USING BTREE 放到索引字段前面即可.

第二、dedecms的一些字段跟mysql系統保留字段沖突,而SQLyog導出的數據sql文件的sql語句insert中的字段有沒有加符號“`”,所以會沖突。


在phpmyadmin內選擇某個數據庫,浏覽其table列表,可以看到table的collation(整理)信息。例如A數據庫table的collation信息為gbk_chinese_ci,那麼在導出數據庫成sql腳本前,在phpmyadmin首頁language(語言)一欄選擇“中文-Chinese simplified”,千萬不要選擇“中文-Chinese simplified-gb2312”,否則導出的sql文件中中文會出現亂碼現象。這句話絕對是關鍵,我就是按照這樣做的然後就OK了。

同理,table的collation信息為gb2312_chinese_ci,那麼在導出數據庫成sql腳本前,在phpmyadmin首頁 language(語言)一欄選擇“中文-Chinese simplified-gb2312”,這樣導出的sql腳本中文不會出現亂碼。

  當導入上述導出的sql腳本時,進入phpmyadmin首頁,能夠看到“MySQL 字符集”信息,例如“UTF-8 Unicode (utf8)”,那麼在導入上述導出的sql腳本時,“文件的字符集”選擇“utf8”。


如果是dedecms可直接使用dededms直接數據導入導出

copyright © 萬盛學電腦網 all rights reserved