在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/數(shù)據(jù)庫/ MySQL多個(gè)唯一列,插入數(shù)據(jù)問題

MySQL多個(gè)唯一列,插入數(shù)據(jù)問題

舉個(gè)例子:
有一張表,標(biāo)題和出處兩個(gè)列被設(shè)置了唯一屬性

需求:

當(dāng)兩列的值完全一致時(shí),才不會插入數(shù)據(jù),只要兩列的值有一個(gè)不同都會插入數(shù)據(jù)

嘗試操作:
當(dāng)使用下列sql語句進(jìn)行插入操作時(shí),發(fā)現(xiàn)只能插入一條數(shù)據(jù),受到上述兩個(gè)唯一列的限制,只插入了一條數(shù)據(jù),也就是說現(xiàn)在是兩個(gè)兩個(gè)唯一列同時(shí)生效而不是組合生效

insert into xxx .... ON DUPLICATE KEY UPDATE xxx=xxx;

其他辦法設(shè)想:
插入前select查詢數(shù)據(jù),根據(jù)結(jié)果判斷數(shù)據(jù)是否存在
不存在則插入數(shù)據(jù),存在則略過本次操作

目前需求:
一條sql語句解決問題,類似上述的sql

第一次提問,感謝各位了...

回答
編輯回答
瘋浪

思維死角了...
一直糾結(jié)數(shù)據(jù)庫該怎么操作,其實(shí)可以在程序中對兩個(gè)字段的值進(jìn)行hash操作,然后把這個(gè)hash過的值設(shè)置在數(shù)據(jù)庫中設(shè)置為唯一,這樣就解決了問題...

2017年7月10日 20:36