Hi All,The code (http://sqlxml.org/faqs.aspx?faq=100) below mirrors mine but is simplfied: declare @i int exec sp_xml_preparedocument @i output, '<mydata> <test xmlID="3" xmlData="blah blah blah"/> <test xmlID="1" xmlData="blah"/></mydata>' insert into test select xmlID, xmlData from OpenXml(@i, 'mydata/test')with (xmlID int, xmlData nvarchar(30))where xmlID not in (select xmlID from test) update testset test.xmlData = ox.xmlDatafrom OpenXml(@i, 'mydata/test')with (xmlID int, xmlData nvarchar(30)) oxwhere test.xmlID = ox.xmlID exec sp_xml_removedocument @i
My question is when running this stored procedure for the first time, isn't one inserting AND then updating each row?