다른 곳에서 답을 얻는다면 사과드립니다. 나는 오류 메시지 XQuery를 점점 계속 [Mytable.XMLData.nodes는()] : '대답'SQL Server XQUERY를 가져 오는 방법 "[요소]라는 요소가 없습니다."
SELECT
ref.value('/','nvarchar(1000)')
FROM Mytable CROSS APPLY xmldata.nodes('Answer') R(ref)
라는 이름의 요소가 없다 -
--XML of Row
<Answer xmlns="http://TempNameSpace.com/AnswerData.xsd" Type="Deliverable">
<Deliverable>
<Title>test</Title>
<Description>test</Description>
<DueDate>2010-02-16T08:59:59</DueDate>
</Deliverable>
</Answer>
나는 점점에 여러 가지 변화를 시도했다 루트 노드 ('대답'), 또는 아이의 어떤 그러나 나는 결과를 얻을
SELECT
ref.value('/','nvarchar(1000)')
FROM Mytable CROSS APPLY xmldata.nodes('/') R(ref)
를 읽어 내 문을 변경, 경우 노드,testtest2010-02-16T08 : 59 : 59
I 좋겠 궁극적으로 도움을
SELECT
ref.value('/Title','nvarchar(1000)') as Title
ref.value('/Description','nvarchar(1000)') as Description
etc..
FROM Mytable CROSS APPLY xmldata.nodes('/Deliverable') R(ref)
감사 등이 표 형식의 데이터, 뭔가 같은
당신은에주의를 지불하지 않는
관심 대상이 될 수 있습니다. http://stackoverflow.com/questions/1302064/sql-server-2005-xml-query-works-value-requires-singleton-found-xdtuntype –
예, 조금 도움이됩니다. 루트 노드에서 네임 스페이스 선언을 제거하면 이제 내 요소를 찾을 수 있습니다. 그러나 내 요소 중 명시 적 네임 스페이스 접두사가 없습니다 (예 : blah ) 해야합니까? 내 xmlns = "http://TempNameSpace.com/AnswerData.xsd"줄을 내 xml에서 제거 할 수 있다고 가정합니다. 그러나 xml 유효성 검사를 사용하려고 계획했습니다. 감사합니다. –
Beta033
OOPS !!! @Myself : 대신 (/) [1] 부분에주의하십시오. 도움이 – Beta033