Msg 544 means you tried to insert a value into an identity column while IDENTITY_INSERT is OFF. Error Message:

Server: Msg 544, Level 16, State 1, Line 1 Cannot insert explicit value for identity column in table when IDENTITY_INSERT is set to OFF.
This error message appears when you try to insert a value into a column for which the IDENTITY property was declared, but without having set the IDENTITY_INSERT setting for the table to ON.
Fix/WorkAround/Solution:
/* Turn Identity Insert ON so records can be inserted in the Identity Column */ SET IDENTITY_INSERT [dbo].[TableName] ON GO INSERT INTO [dbo].[TableName] ( [ID], [Name] ) VALUES ( 2, 'InsertName') GO /* Turn Identity Insert OFF */ SET IDENTITY_INSERT [dbo].[TableName] OFF GO
Setting the IDENTITY_INSERT to ON allows explicit values to be inserted into the identity column of a table. Execute permissions for the SET IDENTITY_INSERT default to the sysadmin fixed server role and the db_owner and db_ddladmin fixed database roles, and the object owner.
Published by Pinal Dave on SQLAuthority. More of my work at pinaldave.com.
Discover more from SQL Authority with Pinal Dave
Subscribe to get the latest posts sent to your email.





2 Comments. Leave new
can we use above statements inside a stored procedure ?
my stored procedure will also use begin transaction and commit
I did this and I’ve done this a million times in the past. At new job I am trying and keep coming up with the error. Is there something that could be turning it off right after it is set to “on”?