- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業(yè)務經(jīng)營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯(lián)網(wǎng)協(xié)會理事單位
- 安全聯(lián)盟認證網(wǎng)站身份V標記
- 域名注冊服務機構許可:滇D3-20230001
- 代理域名注冊服務機構:新網(wǎng)數(shù)碼
SQLServer中防止并發(fā)插入重復數(shù)據(jù),大致有以下幾種方法:
1.使用Primary Key,Unique Key等在數(shù)據(jù)庫層面讓重復數(shù)據(jù)無法插入。
2.插入時使用條件
insert into Table(****) select **** where not exists(select 1 from Table where ****);
3.使用SERIALIZABLE隔離級別,并且使用updlock或者xlock鎖提示(等效于在默認隔離級別下使用(updlock,holdlock)或(xlock,holdlock))
set transaction isolation level SERIALIZABLE Begin Tran select 1 from Table with(UPDLOCK) where **** --這里即算有索引支撐的情 況下,加的也是范圍鎖RangeS-U,雖然能鎖住,但并發(fā)性能也不佳。 if @@ROWCOUNT = 0 insert into Table (****) values(****); Commit Tran
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP