I I 데이터베이스에 삽입 할 다음 XML을 나는 다음과 같은 SQLSQL, XML 삽입 여러 노드
INSERT INTO test (startLocation,endLocation,mon,tue)
SELECT
X.product.query('startLocation').value('.', 'VARCHAR(255)'),
X.product.query('endLocation').value('.', 'VARCHAR(255)'),
X.product.query('Mon').value('.', 'VARCHAR(255)'),
X.product.query('Tue').value('.', 'VARCHAR(255)')
FROM (
SELECT CAST(x AS XML)
FROM OPENROWSET(
BULK '#fileLocation#',
SINGLE_BLOB) AS T(x)
) AS T(x)
CROSS APPLY x.nodes('latestjourneys/journey') AS X(product)
이 코드를 사용하는 경우에만 startLocation을 사용하고
<latestjourneys>
<journey>
<startLocation>London</startLocation>
<endLocation>manchester</endLocation>
<leavingDay>
<mon>Yes</mon>
<tue>No</tue>
</leavingday>
<journey>
<journey>
<startLocation>Liverpool</startLocation>
<endLocation>Cardiff</endLocation>
<leavingDay>
<mon>Yes</mon>
<tue>No</tue>
</leavingday>
<journey>
</latestjourneys>
endLocation이 삽입됩니다. CROSS APPLY를 변경하면
CROSS APPLY x.nodes('latestjourneys/journey/leavingDay') AS X(product)
일만 삽입됩니다.
두 가지 데이터를 삽입 할 수있는 방법은 무엇입니까?
** ** 데이터베이스 시스템 및 버전은 무엇입니까 ?? ** SQL **은 많은 데이터베이스 시스템에서 사용되는 언어 인 구조화 된 쿼리 언어입니다 - SQL은 ** 데이터베이스 제품이 아닙니다 ** XML 지원과 같은 기능은 벤더마다 다릅니다 - 그래서 우리는 무엇을 알아야합니까? .... –
또한 XML이 유효하지 않습니다 - ''의 닫는 태그는 ' '(대소 문자가 중요!)이어야하고 ''노드는 전혀 닫혀 있지 않아야합니다. 그들의 "닫는"꼬리표는''다시 - 작동하지 않는다 ... –