discuz_version.php 內容如下:
define(
'DISCUZ_VERSION', '4.0.0');
define('DISCUZ_RELEASE', '20060102');
那應該是 4.0 版本.
這句升級成功:
ALTER TABLE cdb_forums DROP `allowblog`
而我本身並沒有做以下升級:
ALTER TABLE cdb_forums ADD `allowtrade` tinyint(1) NOT NULL default '0'
只是從你之前的回覆,自己 "懶叻" 估吓係唔係咁樣升級.
而這句升級失敗:
ALTER TABLE cdb_forums DROP `allowtrade`
Discuz! 提示
升級錯誤,MySQL 提示: Can't DROP 'allowtrade'; check that column/key exists
相信是因我之前沒有做 ALTER TABLE cdb_forums ADD `allowtrade` 升級而致 升級錯誤.
那又重新回到起點了... 現在仍然不能 編輯論壇. 執行了以上升級後嘗試 編輯論壇 但出現 error msg
User: xxx
Time: 2007-8-31 8:37am
Script: /admincp.php
SQL: UPDATE cdb_forums SET status='1', name='xxx', styleid='0',
allowblog='0', allowtrade='0', allowhtml='0', allowbbcode='1',
allowimgcode='1', allowsmilies='1', alloweditrules='0',
modnewposts='0', recyclebin='0', jammer='0',
disablewatermark='0', autoclose='0'
WHERE fid='80'
Error:
Unknown column 'allowblog' in 'field list'
Errno.: 1054
嘗試執行了以下升級
ALTER TABLE cdb_forums ADD `allowblog` tinyint(1) NOT NULL default '0'
之後出現 error msg:
User: xxx
Time: 2007-8-31 8:45am
Script: /admincp.php
SQL: UPDATE cdb_forums SET status='1', name='xxx', styleid='0',
allowblog='0', allowtrade='0', allowhtml='0', allowbbcode='1',
allowimgcode='1', allowsmilies='1', alloweditrules='0',
modnewposts='0', recyclebin='0', jammer='0',
disablewatermark='0', autoclose='0'
WHERE fid='80'
Error:
Unknown column 'allowtrade' in 'field list'
Errno.: 1054
那我應怎麼辨呢?
其實為何我會分開兩個帖去詢問是有目的和原因的.
原因:
1. 現在這一帖的問題 [errno 1054] 是現在正在運行中的論壇發生. 因版主要求需 編輯論壇 但不成功. 由於之前升級失敗 [4.0.0 -> 4.1.0], 後果是變了亂碼, 不能回頭. 那次幸運地還救到啲 Data, 以致我不敢作出大動作.
2. 我已開了多一個 temp 數據庫作測試用途, 從現在運行中的論壇 備份數據, 再在新 folder 重裝 Discuz 4.0.0, 然後數據恢復, 但不幸地, 亂碼再現.
這樣做的目的:
1. 並不影響現行論壇運作, 滿足版主要求 [因為是大家夾錢租 server]
2. 為免重慆復切, 確定用 temp 數據庫進行升級無誤 [從 4.0.0 -> 4.1.0 -> 5.0.0 -> 5.5.0], 然後才關閉運行中的論壇進行升級. 但現在只能做到重装 4.0.0 無誤, 一數據恢復便出事.
其實這問題已困擾我四個月之久, 現在才有時間及"的起心肝" 去根冶這問題, 其實我已用搜索的方法在 alan888.com 觀看了好多好多的帖但還是未能找到答案...
煩請 friri 版主 指點迷津...
[
本帖最後由 goalkeeper 於 2007-8-31 09:34 編輯 ]