當 IDENTITY_INSERT 設置為 OFF 時,不能為表 'tb_MyInvoices' 中的標識列插入顯式值


默認情況下,IDENTITY_INSER就是off
這種情況下,你寫insert 語句時,identity欄位,不要寫值,系統會自動幫你寫入。

舉例說明:
create table #aa(id int identity(1,1),dt datetime,pay int)
go
insert into #aa(dt,pay)values('2012-4-12',100) --不能向 id欄位寫值,系統會自動寫
go
insert into #aa(id,dt,pay)values(100,'2012-4-14',200) --如果像這樣寫了,就會報錯
go

 

如果你需要寫,可以把off改成on。
如:
set IDENTITY_INSERT #aa on 
insert into #aa(id,dt,pay)values(100,'2012-4-14',200) --這樣就不會報錯了。
實際應用,應該不會要這樣,一般設為 identity,就是要利用系統自動寫入的功能,保證不重復。

在mapper.xml的插入代碼加上  

set IDENTITY_INSERT #aa on 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM