2012-11-16 92 views
0

我有一個流量交換,每一個網站觀看時間,我希望它在插入到它看起來像一個表:PHP MySQL的插入忽略插入數據太多

-user
上門

用戶默認爲1,我不插入它,因爲我認爲對於INSERT IGNORE,您需要一個保持不變的列。

我當前的查詢:

$db->Query("INSERT IGNORE INTO `surfed_site` (site) VALUES('".$sit['id']."')"); 

我身邊有85人在線,但在1秒刷新不言而喻,從下表爲0〜750,因爲用戶可以查看持續20秒一個網站是不可能的在它插入之前。

我想我的INSERT IGNORE不工作,有人能指導我看看我做錯了什麼嗎?

+0

你舒爾是surfed_site是主鍵? – Dukeatcoding

+0

'surfed_site'是桌子,我將如何檢查? – CustomNet

+0

對不起誤讀...網站我的意思是 – Dukeatcoding

回答

1

你確定該網站是主鍵嗎?

爲了讓INSERT忽略工作作爲首要/ uniue鍵

如果使用忽略關鍵字,在執行INSERT語句中出現的錯誤作爲警告,而不是處理您必須聲明插入值。例如,如果沒有IGNORE,表中重複表中現有UNIQUE索引或PRIMARY KEY值的行會導致重複鍵錯誤,並且語句會中止。使用IGNORE時,該行仍未插入,但未發出錯誤。

http://dev.mysql.com/doc/refman/5.5/en/insert.html

添加主鍵如果不與現有的:

ALTER TABLE surfed_site ADD PRIMARY KEY (site); 
+0

我將如何去添加主鍵/唯一鍵? – CustomNet

+0

ALTER TABLE CUSTOMER ADD PRIMARY KEY(ID); – Dukeatcoding