sql server 2012 - How to update multiple rows with same id in sql -
here code: getting error while updating rows
declare @xmldocument xml set @xmldocument =  '<employeezonemapping>   <employeezonedata>    <employeeid>5</employeeid>    <servicecirclezoneid>3</servicecirclezoneid>    <employeezonemappingstatus>1</employeezonemappingstatus>   </employeezonedata>  <employeezonedata> <employeeid>5</employeeid> <servicecirclezoneid>6</servicecirclezoneid> <employeezonemappingstatus>0</employeezonemappingstatus>   </employeezonedata> </employeezonemapping>'     ;with xmldata  ( select     a.details_employeezonemapping.value('(employeeid) [1]','int') employeeid,   a.details_employeezonemapping.value('(servicecirclezoneid) [1]','tinyint') servicecirclezoneid,   a.details_employeezonemapping.value('(employeezonemappingstatus) [1]','bit') employeezonemappingstatus  @xmldocument.nodes ('employeezonemapping/employeezonedata')  (details_employeezonemapping)) merge dbo.details_employeezonemapping t  using xmldata x on t.employeeid = x.employeeid  when matched           update set      t.servicecirclezoneid = x.servicecirclezoneid,    t.employeezonemappingstatus = x.employeezonemappingstatus   when not matched        insert(employeeid,servicecirclezoneid,employeezonemappingstatus)   values(x.employeeid, x.servicecirclezoneid, x.employeezonemappingstatus) ; error:
the merge statement attempted update or delete same row more once. happens when target row matches more 1 source row. merge statement cannot update/delete same row of target table multiple times. refine on clause ensure target row matches @ 1 source row, or use group clause group source rows.
 
 
  
Comments
Post a Comment