最近幫人在承租的主機上架設xoops,但由於速度太慢,於是換到較快的主機上,在還原MYSQL資料庫時出現了如下的訊息:
CREATE TABLE waa_block_instance (
instanceid int(12) unsigned NOT NULL auto_increment,
bid int(12) unsigned NOT NULL default ‘0’,
options text NOT NULL,
title varchar(255) NOT NULL default “,
side tinyint(1) unsigned NOT NULL default ‘0’,
weight smallint(5) unsigned NOT NULL default ‘0’,
visible tinyint(1) unsigned NOT NULL default ‘0’,
bcachetime int(10) unsigned NOT NULL default ‘0’,
PRIMARY KEY (instanceid),
KEY join (instanceid,visible,weight)
) TYPE=MyISAM;
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 ‘join (instanceid,visible,weight)
) TYPE=MyISAM’ at line 11
instanceid int(12) unsigned NOT NULL auto_increment,
bid int(12) unsigned NOT NULL default ‘0’,
options text NOT NULL,
title varchar(255) NOT NULL default “,
side tinyint(1) unsigned NOT NULL default ‘0’,
weight smallint(5) unsigned NOT NULL default ‘0’,
visible tinyint(1) unsigned NOT NULL default ‘0’,
bcachetime int(10) unsigned NOT NULL default ‘0’,
PRIMARY KEY (instanceid),
KEY join (instanceid,visible,weight)
) TYPE=MyISAM;
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 ‘join (instanceid,visible,weight)
) TYPE=MyISAM’ at line 11
打開檔案,看不出為什麼11行這裡會出錯,其它行也都是這樣,為什麼沒有錯誤,於是上XOOPS網站查詢,討論區中也有人遇到這種狀況,有人回應說要把這行的欄位名稱的前後都用這個符號 ` 包起來,用這個符號包起來後,再還原時就正常的倒回去了。
PRIMARY KEY (`instanceid`),
KEY join (`instanceid`,`visible`,`weight`)
KEY join (`instanceid`,`visible`,`weight`)
我只修改這兩小段而已。其它沒問題的就不去修改了。
PART2:
我用上面的修改方法倒資料庫時,restore_dump沒有出現錯誤,
唯xoops的所有區塊都消失不見了,使用新增的方式新增區增也出現無法儲存的錯誤,於打開Mysql除錯模式,發現原因是找不到資料庫的欄位,到資料庫裡去檢查,發現這個table沒有被匯入,接著使用phpMyAdmin將上面的語法貼入執行,但出現錯誤,仔細看了一看,原來要改成這樣才行。
PRIMARY KEY (`instanceid`),
KEY `join` (`instanceid`,`visible`,`weight`)
KEY `join` (`instanceid`,`visible`,`weight`)
PART3:
其實上面只要把join包起來即可,其它的不用反引號包起來
PRIMARY KEY (instanceid),
KEY `join` (instanceid,visible,weight)
為什麼只有join會產生錯誤,目前沒時間探究。
其實上面只要把join包起來即可,其它的不用反引號包起來
PRIMARY KEY (instanceid),
KEY `join` (instanceid,visible,weight)
為什麼只有join會產生錯誤,目前沒時間探究。
廣告
發表迴響