2008-10-28 5 views
0

으로로드하십시오. 따라서 각 레코드에 대해 300 개 이상의 요소가 포함 된이 큰 XML 파일이 있으며이 레코드를 데이터베이스 테이블에 삽입해야합니다. XML 파일의 노드 이름은 db의 열 이름과 동일합니다. 그리고 그들은 모두 줄입니다. 그들을 매핑하고 데이터를 삽입하는 자동 방법이 있습니까? 아니면 XML 파일의 각 요소에 각 열을 매핑하는 코드 줄을 작성해야합니까? SQL Server 2005 사용.각 레코드에 대해 300 개의 요소가 포함 된 XML을 db

답변

0

사용중인 데이터베이스 엔진은 무엇입니까? 등 대량로드 또는 가져 오기/내보내기 마법사,

Microsoft KB를 사용하여 데이터를 가져올 수

SQL 서버, + Many Other Techniques

3

나는 SQL 서버에 대량로드 또는 SQL/XML을 사용하여 동의 것 좋은 선택입니다.

데이터베이스가 SQL 서버가 아니며 xml을 기본적으로 지원하지 않으면 기본 xslt를 사용하여 xml을 csv 또는 tsv로 변환 할 수 있습니다. 대부분의 데이터베이스는 구분 된 파일을 가져올 수 있습니다.

물론 또 다른 질문이 있습니다. 왜 300 열이 있습니까?

0

300 컬럼? 내가 질문을 읽는 방식은 아니지만, 다시 영어는 그다지 좋지 않습니다. :) 내가 아는 한 Xml과 데이터베이스 테이블/열 사이에는 자동 매핑이 없습니다. 그러나 동적 업데이트를 작성하는 것이 그렇게 어렵지 않아야합니까? 모든 열 이름 (노드 이름)을 가져 와서 문자열 (column1, column2 등)에 추가 한 다음 xml을 반복하여 값 (node1.Value node2.Value 등)을 생성합니다. 또는 SQL Server 2005/2008을 사용하는 경우 bulk insert을 사용하십시오.

관련 문제