2011-12-05 42 views
10

我必須將錯誤代碼轉換爲更好的解決方案來計算我們網站的計數。 我有一個統計的時間插入無效的mysql查詢

的數量的表格

當前表:

CREATE TABLE `hits_2011_12_5` (
    `count` int(11) DEFAULT NULL 
) ENGINE=MyISAM DEFAULT CHARSET=latin1; 

現在我要慢慢的新代碼遷移到舊的,但我有這個錯誤與新代碼:

[email protected]:test> insert into hits_2011_12_5 values (1,2,3,4,5); 
ERROR 1136 (21S01): Column count doesn't match value count at row 1 

可能是什麼問題?

+1

這樣的表格表示「更好的解決方案」? –

+0

這是舊的結構,舊的「專家」創建了超過1000個表,只有一列來計算請求等...所以我想改變它,並使用計數(*),而不是與日期的where子句,但現在我需要將所有的數據遷移到這個表中,這是一個痛苦,所以我創建了一個PHP腳本,而不是手動做,但我得到了這個錯誤 – ana

+0

你的問題沒有任何意義。當前表稱爲「hits_2011_12_5」,但您的插入查詢使用名爲「log」的表。你不給我們「日誌」表的模式,所以我們只能猜測問題是什麼。 – liquorvicar

回答

11

使用本:

[email protected]:test> insert into hits_2011_12_5 values (1),(2),(3),(4),(5); 
Query OK, 5 rows affected (0.00 sec) 
Records: 5 Duplicates: 0 Warnings: 0 

您嘗試的查詢需要5列,不插入5行。