>데이터 베이스 >MySQL 튜토리얼 >XQuery를 사용하여 XML 데이터를 SQL Server 테이블로 변환하려면 어떻게 해야 합니까?

XQuery를 사용하여 XML 데이터를 SQL Server 테이블로 변환하려면 어떻게 해야 합니까?

Barbara Streisand
Barbara Streisand원래의
2025-01-04 00:50:40191검색

How can I convert XML data to a SQL Server table using XQuery?

SQL Server에서 XML 데이터를 테이블로 변환

SQL Server에서는 XML 데이터를 사용하여 XML 데이터를 테이블 형식으로 변환할 수 있습니다. 유형 및 XQuery 표현식. 방법은 다음과 같습니다.

접근 방법 1: 노드 값 추출기 사용

다음과 같은 형식의 데이터가 포함된 XML 문서가 있다고 가정합니다.

<row>
    <IdInvernadero>8</IdInvernadero>
    <IdProducto>3</IdProducto>
    <IdCaracteristica1>8</IdCaracteristica1>
    <IdCaracteristica2>8</IdCaracteristica2>
    <Cantidad>25</Cantidad>
    <Folio>4568457</Folio>
</row>
<row>
    <IdInvernadero>3</IdInvernadero>
    <IdProducto>3</IdProducto>
    <IdCaracteristica1>1</IdCaracteristica1>
    <IdCaracteristica2>2</IdCaracteristica2>
    <Cantidad>72</Cantidad>
    <Folio>4568457</Folio>
</row>

이 XML을 테이블로 변환하려면 다음 XQuery를 사용할 수 있습니다. 표현식:

SELECT  
       Tbl.Col.value('IdInvernadero[1]', 'smallint'),  
       Tbl.Col.value('IdProducto[1]', 'smallint'),  
       Tbl.Col.value('IdCaracteristica1[1]', 'smallint'),
       Tbl.Col.value('IdCaracteristica2[1]', 'smallint'),
       Tbl.Col.value('Cantidad[1]', 'int'),
       Tbl.Col.value('Folio[1]', 'varchar(7)')
FROM   @xml.nodes('//row') Tbl(Col)

접근 방법 2: 속성 값 추출기 사용

또는 XML 데이터가 다음과 같이 노드 대신 속성으로 형식화된 경우:

<row IdInvernadero="8" IdProducto="3" IdCaracteristica1="8" IdCaracteristica2="8" Cantidad ="25" Folio="4568457" />
<row IdInvernadero="3" IdProducto="3" IdCaracteristica1="1" IdCaracteristica2="2" Cantidad ="72" Folio="4568457" />

다음 XQuery를 사용할 수 있습니다. 표현식:

SELECT  
       Tbl.Col.value('@IdInvernadero', 'smallint'),  
       Tbl.Col.value('@IdProducto', 'smallint'),  
       Tbl.Col.value('@IdCaracteristica1', 'smallint'),
       Tbl.Col.value('@IdCaracteristica2', 'smallint'),
       Tbl.Col.value('@Cantidad', 'int'),
       Tbl.Col.value('@Folio', 'varchar(7)')

FROM   @xml.nodes('//row') Tbl(Col)

이 쿼리는 XML 속성에서 값을 추출하여 표 형식으로 변환합니다. 형식입니다.

참고 자료:

  • [http://kennyshu.blogspot.com/2007/12/convert-xml-file-to-table- in-sql-2005.html](http://kennyshu.blogspot.com/2007/12/convert-xml -file-to-table-in-sql-2005.html)
  • [http://msdn.microsoft.com/en-us/library/ms345117(SQL.90).aspx](http: //msdn.microsoft.com/en-us/library/ms345117(SQL.90).aspx)

위 내용은 XQuery를 사용하여 XML 데이터를 SQL Server 테이블로 변환하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.