《MYSQL數(shù)據(jù)庫(kù)MySQL使用UNIQUE實(shí)現(xiàn)數(shù)據(jù)不重復(fù)插入》要點(diǎn):
本文介紹了MYSQL數(shù)據(jù)庫(kù)MySQL使用UNIQUE實(shí)現(xiàn)數(shù)據(jù)不重復(fù)插入,希望對(duì)您有用。如果有疑問,可以聯(lián)系我們。
SQL UNIQUE 約束
MYSQL必讀
UNIQUE 約束唯一標(biāo)識(shí)數(shù)據(jù)庫(kù)表中的每條記錄.
UNIQUE 和 PRIMARY KEY 約束均為列或列集合提供了唯一性的保證.
PRIMARY KEY 擁有自動(dòng)定義的 UNIQUE 約束.
MYSQL必讀
請(qǐng)注意,每個(gè)表可以有多個(gè) UNIQUE 約束,但是每個(gè)表只能有一個(gè) PRIMARY KEY 約束.
MYSQL必讀
下面的 SQL 在 “Persons” 表創(chuàng)建時(shí)在 “Id_P” 列創(chuàng)建 UNIQUE 約束:MYSQL必讀
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ǔ)法:MYSQL必讀
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:MYSQL必讀
ALTER TABLE Persons ADD UNIQUE (Id_P)
MYSQL必讀
如需命名 UNIQUE 約束,并定義多個(gè)列的 UNIQUE 約束,請(qǐng)使用下面的 SQL 語(yǔ)法:MYSQL必讀
ALTER TABLE Persons ADD CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName)
MYSQL必讀
如需撤銷 UNIQUE 約束,請(qǐng)使用下面的 SQL:MYSQL必讀
ALTER TABLE Persons DROP INDEX uc_PersonID
MYSQL必讀
這樣每次插入重復(fù)記錄時(shí)MySQL就會(huì)提示Duplicate entry value1-value2 for key uni_que,當(dāng)然你可以在insert的時(shí)候加入ignore來忽略掉
現(xiàn)在保證了無重復(fù)記錄后,我們要開始記錄不存在則插入,存在則更新操作MYSQL必讀
INSERT INTO tablename (field1, field2, field3, ...) VALUES ('value1', 'value2','value3', ...) ON DUPLICATE KEY UPDATE field1='value1', field2='value2', field3='value3', ...
MYSQL必讀
這個(gè)語(yǔ)句的意思是,插入值,如果沒有該記錄執(zhí)行MYSQL必讀
INSERT INTO tablename (field1, field2, field3, ...) VALUES ('value1', 'value2','value3', ...)
MYSQL必讀
這一段,如果存在該記錄,那么執(zhí)行
MYSQL必讀
UPDATE field1='value1', field2='value2', field3='value3', ...
MYSQL必讀
《MYSQL數(shù)據(jù)庫(kù)MySQL使用UNIQUE實(shí)現(xiàn)數(shù)據(jù)不重復(fù)插入》是否對(duì)您有啟發(fā),歡迎查看更多與《MYSQL數(shù)據(jù)庫(kù)MySQL使用UNIQUE實(shí)現(xiàn)數(shù)據(jù)不重復(fù)插入》相關(guān)教程,學(xué)精學(xué)透。維易PHP學(xué)院為您提供精彩教程。
轉(zhuǎn)載請(qǐng)注明本頁(yè)網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/13312.html