현재 SQL 2005 코드 블록은 다음과 같습니다. 내가해야 할 일은 XML을 대량 작업으로 가져 오는 것이다.하지만 각 레코드에 대해 추가 처리 (별도의 테이블에 삽입)해야 할 수도있다. 현재 첫 번째 항목 만 쿼리 할 수있는 반면, 각 DTO를 둘러 보는 커서 스타일의 전체 데이터를 어떻게 쿼리 할 수 있습니까?커서를 사용하여 xml을 쿼리하는 SQL Server
DECLARE @open_xml XML
SET @open_xml = '<DataDTOs>
</pre>
< DataDTO>
< UserId>123456789</UserId>
< ItemID>0</ItemID>
< /DataDTO>
< DataDTO>
< UserId>112456789</UserId>
< ItemID>10</ItemID>
</ DataDTO>
< DataDTO>
< UserId>123456129</UserId>
< ItemID>20</ItemID>
</ DataDTO>
< DataDTO>
< UserId>120056789</UserId>
< ItemID>444</ItemID>
< /DataDTO>
</ DataDTOs>'
DECLARE @userid nvarchar(255)
SELECT @userid =
tab.col.value('UserId[1]','VARCHAR(20)')
FROM @open_xml.nodes('//DataDTO') tab(col)
select @userid
-- Do some stuff
-- Get next UserID
-- Do some stuff
위의 사항에 대한 도움이 필요하십니까?
감사
벤
사실, 우리가 살펴 봐야 할 것이 있습니다. 지금은 C#에서 논리를 빼내서 속한 DB로 옮기고 싶습니다. –