2012-03-29 62 views
5

我有一個包含像login_id,driver_id等字段的最喜愛的表(一個login_id可能有很多driver_id)。然後我使用批量更新,沒有檢查driver_id在表中是否存在。在mysql中的重複條目上跳過插入

輸入數據將被設置爲驅動程序id,如果相同的id已經存在,相關的login_id,我需要跳過驅動程序id的插入。所以新的ID將被插入,而其他ID不會被插入

我能用mysql做什麼,表中所需的所有設置是什麼。

請告訴我

回答

11

您可以使用「INSERT IGNORE INTO」.it返回更新的行數。

INSERT IGNORE INTO favorite(login_id,driver_id) VALUES (login_id,driver_id) (login_id,driver_id)..... 
1

創建mysql中LOGIN_ID和driver_id一個獨特的密鑰。

當您嘗試基於這些鍵插入現有記錄時,將引發錯誤。然後,您可以捕獲此錯誤,並照常進行。

CREATE UNIQUE INDEX unique 
    ON tbl_name (login_id, driver_id)