主頁(yè) > 知識(shí)庫(kù) > MySQL使用UNIQUE實(shí)現(xiàn)數(shù)據(jù)不重復(fù)插入

MySQL使用UNIQUE實(shí)現(xiàn)數(shù)據(jù)不重復(fù)插入

熱門標(biāo)簽:成都優(yōu)派外呼系統(tǒng) 扎樣申請(qǐng)400電話 ps制作地圖標(biāo)注gif 電子地圖標(biāo)注電話 寧波企業(yè)外呼系統(tǒng)收費(fèi) 聊城智能外呼系統(tǒng)運(yùn)營(yíng)商 沈陽(yáng)電銷外呼系統(tǒng)原理是什么 上海智能外呼系統(tǒng)代理商 地圖標(biāo)注人員兼職

SQL UNIQUE 約束

UNIQUE 約束唯一標(biāo)識(shí)數(shù)據(jù)庫(kù)表中的每條記錄。
UNIQUE 和 PRIMARY KEY 約束均為列或列集合提供了唯一性的保證。
PRIMARY KEY 擁有自動(dòng)定義的 UNIQUE 約束。

請(qǐng)注意,每個(gè)表可以有多個(gè) UNIQUE 約束,但是每個(gè)表只能有一個(gè) PRIMARY KEY 約束。

下面的 SQL 在 “Persons” 表創(chuàng)建時(shí)在 “Id_P” 列創(chuàng)建 UNIQUE 約束:

CREATE TABLE Persons
(
  Id_P int NOT NULL,
  LastName varchar(255) NOT NULL,
  FirstName varchar(255),
  Address varchar(255),
  City varchar(255),
  UNIQUE (Id_P)
)

如果需要命名 UNIQUE 約束,以及為多個(gè)列定義 UNIQUE 約束,請(qǐng)使用下面的 SQL 語(yǔ)法:

CREATE TABLE Persons
(
  Id_P int NOT NULL,
  LastName varchar(255) NOT NULL,
  FirstName varchar(255),
  Address varchar(255),
  City varchar(255),
  CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName)
)

當(dāng)表已被創(chuàng)建時(shí),如需在 “Id_P” 列創(chuàng)建 UNIQUE 約束,請(qǐng)使用下列 SQL:

ALTER TABLE Persons ADD UNIQUE (Id_P)

如需命名 UNIQUE 約束,并定義多個(gè)列的 UNIQUE 約束,請(qǐng)使用下面的 SQL 語(yǔ)法:

ALTER TABLE Persons ADD CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName)

如需撤銷 UNIQUE 約束,請(qǐng)使用下面的 SQL:

ALTER TABLE Persons DROP INDEX uc_PersonID

這樣每次插入重復(fù)記錄時(shí)MySQL就會(huì)提示Duplicate entry value1-value2 for key uni_que,當(dāng)然你可以在insert的時(shí)候加入ignore來(lái)忽略掉
現(xiàn)在保證了無(wú)重復(fù)記錄后,我們要開(kāi)始記錄不存在則插入,存在則更新操作

INSERT INTO tablename (field1, field2, field3, ...) VALUES ('value1', 'value2','value3', ...) ON DUPLICATE KEY UPDATE field1='value1', field2='value2', field3='value3', ...

這個(gè)語(yǔ)句的意思是,插入值,如果沒(méi)有該記錄執(zhí)行

INSERT INTO tablename (field1, field2, field3, ...) VALUES ('value1', 'value2','value3', ...)

這一段,如果存在該記錄,那么執(zhí)行

UPDATE field1='value1', field2='value2', field3='value3', ...

您可能感興趣的文章:
  • mysql 數(shù)據(jù)表中查找重復(fù)記錄
  • MySQL根據(jù)某一個(gè)或者多個(gè)字段查找重復(fù)數(shù)據(jù)的sql語(yǔ)句
  • mysql查找刪除重復(fù)數(shù)據(jù)并只保留一條實(shí)例詳解
  • mysql查詢表里的重復(fù)數(shù)據(jù)方法
  • MySQL 刪除數(shù)據(jù)庫(kù)中重復(fù)數(shù)據(jù)方法小結(jié)
  • MySQL查詢重復(fù)數(shù)據(jù)(刪除重復(fù)數(shù)據(jù)保留id最小的一條為唯一數(shù)據(jù))
  • 很全面的MySQL處理重復(fù)數(shù)據(jù)代碼
  • MySQL數(shù)據(jù)庫(kù)中刪除重復(fù)記錄的方法總結(jié)[推薦]
  • 分享MYSQL插入數(shù)據(jù)時(shí)忽略重復(fù)數(shù)據(jù)的方法
  • 一次現(xiàn)場(chǎng)mysql重復(fù)記錄數(shù)據(jù)的排查處理實(shí)戰(zhàn)記錄

標(biāo)簽:宿州 咸寧 林芝 內(nèi)江 AXB 三明 汕頭 朔州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《MySQL使用UNIQUE實(shí)現(xiàn)數(shù)據(jù)不重復(fù)插入》,本文關(guān)鍵詞  MySQL,使用,UNIQUE,實(shí)現(xiàn),數(shù)據(jù),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《MySQL使用UNIQUE實(shí)現(xiàn)數(shù)據(jù)不重復(fù)插入》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于MySQL使用UNIQUE實(shí)現(xiàn)數(shù)據(jù)不重復(fù)插入的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章