2014-12-01 73 views
0

我不知道從哪裏開始這個錯誤:的Drupal 7 PDOException:的SQLState [42S22],未知的領域

PDOException:SQLSTATE [42S22]:列未找到:在「田 '創建' 1054未知列列表':SELECT created FROM {counter} WHERE created <> 0 ORDER BY created DESC LIMIT 1; counter_block_view()中的Array()(來自/customers/6/8/3/lmtc.be/httpd.www/drupal/sites/all/modules/counter/counter.module的第143行)。

該錯誤發生在登錄!

文件counter.module看起來是這樣的:

127 // counter_insert_delay 
128 $db_types = db_driver(); 
129 switch ($db_types) { 
130 case 'mssql': 
131  $sql = " SELECT TOP 1 created FROM {counter} WHERE created<>0 ORDER BY created DESC"; 
132  break; 
133 
134 case 'oracle': 
135  $sql = " SELECT created FROM {counter} WHERE ROWNUM=1 AND created<>0 ORDER BY created DESC"; 
136  break; 
137 
138 // mysql, mysqli, pgsql. 
139 default: 
140  $sql = " SELECT created FROM {counter} WHERE created<>0 ORDER BY created DESC LIMIT 1"; 
141 } 
142 
143 $counter_lastdate = db_query($sql)->fetchField(); 

我的數據庫看起來是這樣的:

22901 -- 
22902 -- Table structure for table `counter` 
22903 -- 
22904 
22905 CREATE TABLE IF NOT EXISTS `counter` ( 
22906 `counter_id` int(11) NOT NULL AUTO_INCREMENT, 
22907 `counter_ip` varchar(32) NOT NULL DEFAULT '', 
22908 `counter_date` varchar(32) NOT NULL DEFAULT '', 
22909 `counter_page` varchar(255) NOT NULL DEFAULT '0', 
22910 PRIMARY KEY (`counter_id`), 
22911 KEY `counter_date` (`counter_date`), 
22912 KEY `counter_ip` (`counter_ip`) 
22913) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=217 ; 

結論:確實是有沒有在我的MySQL數據庫 '創造' 欄。但是我在這個網站上改變的最後一件事是幾個月前的兩篇文章。該結構的最後一次改變是很久以前的事了,自從站點設置以來,站點計數器從未改變過。

我能做些什麼才能重新登錄?我應該刪除計數器模塊嗎?
ps我不是一個Drupal開發人員。
我會提前感謝您的幫助。
親切的問候,弗蘭克

回答

0

可能是你已經更新你的模塊,但只是忘了運行數據庫更新?嘗試轉到your_site/update.php頁面並按照說明操作。

當然,您必須先以管理員身份登錄,然後才能執行此操作。

+0

我無法登錄,登錄時發生錯誤。 – Frank 2014-12-03 20:15:33

+0

哦,對不起,我的壞... 嘗試評論功能導致此錯誤和登錄。 可能我可以給你一個更好的答案,但我需要看到你的網站的代碼。 – Timofey 2014-12-04 15:10:36

相關問題