SQL Server 2005의 공용 구조체 요소가 포함된 XML 데이터에 대해 XQuery 실행할 때 잘못된 형식이 공용 구조체 요소의 반환된

기술 자료 번역 기술 자료 번역
기술 자료: 914596 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

이 페이지에서

현상

영문자와 숫자가 조합된 PIN 코드가 설정된 Bluetooth 장치가 있다면. 공용 구조체 요소의 xsi: type 특성 값을 지정합니다. 그런 다음 공용 구조체 요소가 포함된 XML 데이터에 대해 쿼리를 XQuery를 사용합니다. 이 시나리오에서 쿼리가 공용 구조체 요소에 대해 잘못된 형식을 반환합니다.

원인

공용 구조체 요소의 xsi: type 특성 값을 기본 기본 형식 값의 수 없기 때문에 이 문제가 발생합니다. XML 직렬화 중에 xsi: type 특성 값을 실제로 설정된 기본 기본 형식이 반환됩니다.

해결 방법

서비스 팩 정보

이 문제를 해결하려면 Microsoft SQL Server 2005 최신 서비스 팩을 구하십시오. 추가 정보는 다음 문서 번호를 클릭하여 Microsoft 기술 자료에서 확인하십시오:
913089SQL Server 2005 최신 서비스 팩을 구하는 방법

현재 상태

Microsoft는 "본 문서의 정보는 다음의 제품에 적용됩니다." 절에 나열된 Microsoft 제품에서 이 문제를 확인했습니다. 이 문제는 Microsoft SQL Server 2005 서비스 팩 1에서 처음 수정되었습니다.

추가 정보

문제를 재현하는 방법

  1. SQL Server 관리 Studio를 열고 SQL Server 2005 인스턴스에 연결하십시오.
  2. 새 쿼리 도구 모음에서 클릭하십시오.
  3. 쿼리 편집기에서 다음 코드를 붙여 넣은 다음 F5 키를 눌러.
    use master
    use master
    if (db_id('MyDatabase') is not null)
    	drop database MyDatabase
    go
    
    create database MyDatabase
    go
    
    use MyDatabase
    go
    
    CREATE XML SCHEMA COLLECTION unionType AS N'
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    	targetNamespace="MyDatabase" xmlns:tn="MyDatabase">
    	
    	<xs:simpleType name="myInt">
    		<xs:restriction base="xs:integer">
    			<xs:maxInclusive value="1000"/>
    		</xs:restriction>
    	</xs:simpleType>
    	
    	<xs:element name="s">
    		<xs:simpleType>
    			<xs:union memberTypes="xs:double tn:myInt"/>
    		</xs:simpleType>
    	</xs:element>	
    </xs:schema>'
    go
    
    CREATE TABLE testTable ( PK int identity primary key, xmlCol XML(unionType))
    go
    
    insert into testTable values ('<tn:s xmlns:tn="MyDatabase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="tn:myInt">123</tn:s>')
    
    select xmlCol from testTable
    go
    
    SELECT xmlCol.query('/') FROM testTable
    go
    다음 예상되는 결과입니다. <tn:s xmlns:tn="MyDatabase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="tn:myInt"> 123 </tn:s>
    <tn:s xmlns:tn="MyDatabase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="tn:myInt">123</tn:s>
    <tn:s xmlns:tn="MyDatabase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="tn:myInt">123</tn:s>
    다음 실제 결과입니다. <tn:s xmlns:tn="MyDatabase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p1="http://www.w3.org/2001/XMLSchema" xsi:type="p1:decimal"> 123 </tn:s>
    <tn:s xmlns:tn="MyDatabase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="tn:myInt">123</tn:s>
    <tn:s xmlns:tn="MyDatabase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p1="http://www.w3.org/2001/XMLSchema" xsi:type="p1:decimal">123</tn:s>

속성

기술 자료: 914596 - 마지막 검토: 2007년 11월 22일 목요일 - 수정: 2.4
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Workgroup Edition
키워드:?
kbmt kbsql2005sp1fix kbsql2005presp1fix kbsql2005xml kbexpertiseadvanced kbprb KB914596 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com