MYSQL插入數據時忽略重複數據

當程序中insert時,已存在的數據不插入,不存在的數據insert。在網上搜了下,
能夠使用存儲過程或者是用NOT EXISTS 來判斷是否存在。
使用下以兩種方法時必須把字段設爲」主鍵(PRIMARY KEY」或」惟一約束(UNIQUE)」。

1:使用REPLACE INTO (此種方法是利用替換的方法,有點似類於先刪除再插入)
REPLACE INTO Syntax
REPLACE [LOW_PRIORITY | DELAYED]
    [INTO] tbl_name [(col_name,...)]
    {VALUES | VALUE} ({expr | DEFAULT},…),(…),…
Or:
REPLACE [LOW_PRIORITY | DELAYED]
    [INTO] tbl_name
    SET col_name={expr | DEFAULT}, …
Or:
REPLACE [LOW_PRIORITY | DELAYED]
    [INTO] tbl_name [(col_name,...)]
    SELECT …

2:使用INSERT [IGNORE] INTO (此種方法效率比較高,判斷是否存在,存在不插入,不然插入)
INSERT [IGNORE] INTO Syntax
INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]
[INTO] tbl_name [(col_name,...)]
{VALUES | VALUE} ({expr [...]
 
mysql文檔
相關文章
相關標籤/搜索