We help IT Professionals succeed at work.

Cannot insert explicit value for identity column in table 'Tbl_DataEntry' when IDENTITY_INSERT is set to OFF.

shpresa
shpresa asked
on
I am getting this error while trying to insert/update into a table.

The primary key in that table is already set to ON. and incremented by 1.
Cannot insert explicit value for identity column in table 'Tbl_DataEntry' when IDENTITY_INSERT is set to OFF.
Comment
Watch Question

Author

Commented:
Here is my code  where DataentryID is primary key thehe table.
ALTER   PROCEDURE [dbo].SP_CCC
      @OrgID as int,
            @TaskAss1 as nchar(10),
      @PosFeed1 as nchar(10),
      @BriefHuddle1 as nchar(10),
      @Step1 as nchar(10),
      @Handoff1 as nchar(10),
      @Challenges1 as nchar(10)

)      

 AS BEGIN
 declare @DataEntryID int         
 
 set @DataEntryID  = (select DataEntryID from Tbl_DataEntry where OrgID = @OrgID)
IF EXISTS (SELECT * FROM Tbl_DataEntry WHERE DataEntryID = @DataEntryID AND OrgID = @OrgID)
      update Tbl_DataEntry set
 OrgID = @OrgID,

            TaskAss1 = @TaskAss1,
      PosFeed1 = @PosFeed1 ,
      BriefHuddle1 = @BriefHuddle1,
      Step1 = @Step1,
      Handoff1   = @Handoff1,  
      Challenges1   = @Challenges1

      
      where DataEntryID = @DataEntryID
 ELSE
      insert into Tbl_DataEntry
      
(
      DataEntryID,
      OrgID ,
            TaskAss1 ,
      PosFeed1 ,
      BriefHuddle1 ,
      Step1 ,
      Handoff1 ,
      Challenges1
 )
      
      VALUES
      (
      @DataEntryID,
      @OrgID ,
            @TaskAss1,
      @PosFeed1,
      @BriefHuddle1,
      @Step1,
      @Handoff1,
      @Challenges1,

)



end
Senior .Net Developer
Commented:
Don't insert the data entry ID . . . that be populated for you:

 ELSE
      insert into Tbl_DataEntry
     
(
         OrgID ,
            TaskAss1 ,
      PosFeed1 ,
      BriefHuddle1 ,
      Step1 ,
      Handoff1 ,
      Challenges1
 )
     
      VALUES
      (
   
      @OrgID ,
            @TaskAss1,
      @PosFeed1,
      @BriefHuddle1,
      @Step1,
      @Handoff1,
      @Challenges1,

)

select  @@identity  -- return the newly created primary key.

end