일부 XML의 구조를 확인하기 위해 XML에 대한 메타 데이터를 쿼리하고 싶습니다. 49MB xml 파일로 모든 속성 및 하위 태그 목록과 기본 정보를 알아야합니다. 이것을 XML 자체에서 질의 할 수 있습니까? 아니면 난이도를 거치고 거기에 존재할 수있는 각 요소와 속성을 찾아야합니까? 스키마 정의를 사용할 수 없습니다.SQL Server 2005의 데이터가 아닌 XML 구조에 대한 쿼리
DECLARE @x xml
SET @x =
'<People>
<Person age="35">
<Name>Pete</Name>
<Phone>
<Mobile>555-555-1234</Mobile>
<Home>555-555-0001</Home>
</Phone>
</Person>
<Person age="40" height="70 inches">
<Name>Paul</Name>
<Phone>
<Mobile>555-555-4567</Mobile>
</Phone>
</Person>
<Person age="24">
<Name>Susan</Name>
<Phone>
<Home>555-555-2323</Home>
</Phone>
</Person>
</People>'
가 어떻게이 다음과 같은 뭔가를 반환하는 쿼리 것 :
는 다음과 같은 어떤 임의의 XML을 감안할 때? 단일 레코드 세트는 필요하지 않습니다 (물론 좋을 것입니다). 반복적으로 쿼리하여 다른 부분을 얻는 데 상당히 만족할 것입니다. 먼저 루트 People 태그가있는 것을보고, People을 쿼리하고 Person 태그를보고, 마지막으로 Name 및 Phone 태그를 볼 것입니다.People maxcount=1
People.Person maxcount=3 [age maxlen=2 maxcount=3] [weight maxlen=9 maxcount=1]
Person.Name textnode maxcount=1 maxlen=5
Person.Name.Phone maxcount=1
Person.Name.Mobile textnode maxcount=1 maxlen=12
Person.Name.Home textnode maxcount=1 maxlen=12
왜 SQL Server를 사용하여이 작업을 수행 하시겠습니까? –
좋은 지적. 나는 어제 그것에 대해 생각하고 있었다. 이런 종류의 메타 분석을 수행하는 것이 매우 편리 할 수도 있지만 실제로는 XML 라이브러리를 실행하고 분석을 직접하는 것입니다. – ErikE