mysql導(dǎo)入數(shù)據(jù)庫(kù)錯(cuò)誤#1064提示解決方法
錯(cuò)誤1064年在線21 : 您有一個(gè)錯(cuò)誤在您的SQL句法。 檢查手工t帽子對(duì)應(yīng)于您的MySQL服務(wù)器版本為正確的句法,用途近‘DEFAULT CHARSET=utf8在線
第一是,USING BTREE 錯(cuò)誤。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 。。。
解決辦法:
代碼如下 | 復(fù)制代碼 |
UNIQUE KEY `pkey` (“pkey“) USING BTREE ,修改為 UNIQUE KEY `pkey` USING BTREE (“pkey“) , |
即把USING BTREE 放到索引字段前面即可.
第二、dedecms的一些字段跟mysql系統(tǒng)保留字段沖突,而SQLyog導(dǎo)出的數(shù)據(jù)sql文件的sql語(yǔ)句insert中的字段有沒(méi)有加符號(hào)“`”,所以會(huì)沖突。
在phpmyadmin內(nèi)選擇某個(gè)數(shù)據(jù)庫(kù),瀏覽其table列表,可以看到table的collation(整理)信息。例如A數(shù)據(jù)庫(kù)table的collation信息為gbk_chinese_ci,那么在導(dǎo)出數(shù)據(jù)庫(kù)成sql腳本前,在phpmyadmin首頁(yè)language(語(yǔ)言)一欄選擇“中文-Chinese simplified”,千萬(wàn)不要選擇“中文-Chinese simplified-gb2312”,否則導(dǎo)出的sql文件中中文會(huì)出現(xiàn)亂碼現(xiàn)象。這句話絕對(duì)是關(guān)鍵,我就是按照這樣做的然后就OK了。
同理,table的collation信息為gb2312_chinese_ci,那么在導(dǎo)出數(shù)據(jù)庫(kù)成sql腳本前,在phpmyadmin首頁(yè) language(語(yǔ)言)一欄選擇“中文-Chinese simplified-gb2312”,這樣導(dǎo)出的sql腳本中文不會(huì)出現(xiàn)亂碼。
當(dāng)導(dǎo)入上述導(dǎo)出的sql腳本時(shí),進(jìn)入phpmyadmin首頁(yè),能夠看到“MySQL 字符集”信息,例如“UTF-8 Unicode (utf8)”,那么在導(dǎo)入上述導(dǎo)出的sql腳本時(shí),“文件的字符集”選擇“utf8”。