SQL Azure 클라우드 환경에서 XML 데이터를 처리하기 위해 Altova 도구를 사용하는 방법

이전 게시글에서 우리는 다음과 같은 내용을 다루었습니다 Altova DatabaseSpy를 사용하여 Microsoft SQL Azure 데이터베이스에 연결하는 방법 그리고 로컬 데이터베이스와 SQL Azure로 마이그레이션된 동일한 데이터베이스 간의 데이터베이스 스키마 비교 및 내용 비교를 시연했습니다. 이번 글에서는 기존 테이블을 SQL Azure로 마이그레이션하는 다른 방법을 사용하고, 클라우드 환경에서 XML을 활용하는 몇 가지 유용한 방법을 보여드리겠습니다. 먼저, SQL Azure에 새로운 데이터베이스 스키마를 생성했습니다. 그런 다음, DatabaseSpy 프로젝트 SQL Server Express의 로컬 복사본(AdventureWorks 샘플 데이터베이스를 실행 중)에 연결하고, 또한 새로운 SQL Azure 스키마에 연결되어 있습니다.

AdventureWorks 데이터베이스에는 "JobCandidate"라는 테이블이 있으며, 이 테이블에는 XML 데이터가 포함되어 있습니다. 이 XML 데이터를 활용하여 SQL Azure에서 사용할 XML 콘텐츠 모델을 구축할 예정입니다.

기존 테이블에 대한 CREATE 문을 생성하여 이를 SQL Azure 버전의 기반으로 사용할 수 있습니다.

이 문장을 SQL Azure 데이터베이스에서 실행될 수 있도록 수정해야 합니다. 데이터베이스 및 스키마 이름을 변경하는 것 외에도, 새로운 데이터베이스에 해당 이름을 가진 테이블이 없으므로, Employee 테이블에 대한 외래 키 제약 조건을 제거할 것입니다. 또한, SQL Azure는 CONTENT 키워드를 지원하지 않으므로, 해당 부분도 제거할 것입니다

수정된 CREATE 문에 대한 속성 창이 SQL Azure 데이터베이스를 가리키는지 확인한 후, 해당 문을 실행할 수 있습니다. 데이터베이스를 새로 고치고 온라인 브라우저 도우미 창에서 테이블 목록을 확장하면, 새로 생성된 빈 테이블을 확인할 수 있습니다.

기존 테이블과 새로운 테이블의 데이터를 비교하면, SQL Azure 클라우드 환경에서 새로운 테이블로 데이터를 이전하는 스크립트를 작성할 수 있습니다. 이는 다음과 같은 작업과 유사합니다 SQL Azure에 대한 이전 게시글에서 언급했던 데이터 비교 내용입니다, 데이터를 직접 병합하는 대신, 병합 스크립트를 저장하겠습니다.

저희가 처음으로 병합 스크립트를 실행했을 때, 오류 메시지가 발생했습니다. 메시지 내용은 SQL Azure가 IDENTITY_INSERT 옵션이 꺼져 있을 때 새 테이블에 값을 삽입할 수 없다는 것이었습니다. 병합 스크립트에 "SET IDENTITY_INSERT ON" 명령을 추가하고 다시 실행하면 문제를 해결할 수 있습니다

다음으로, 성공적으로 업로드된 데이터를 확인하기 위해 SELECT 쿼리를 실행할 수 있습니다.

DatabaseSpy의 데이터 검사기 창을 사용하면 폭넓은 데이터 열의 내용을 보다 쉽게 확인할 수 있으며, 특히 새로운 "JobCandidate" 테이블의 "Resume" 열에 저장된 XML 문서의 내용을 검토하는 데 유용합니다.

XMLSpy를 이용한 XML 데이터 편집 SQL Azure 데이터베이스에 저장된 XML 데이터를 수정, 편집, 업데이트하거나 유효성을 검사해야 하는 경우, Altova XMLSpy는 DatabaseSpy보다 더 강력한 XML 편집 기능을 제공합니다. XMLSpy를 통해 SQL Azure 데이터베이스에 연결하고, XMLSpy 데이터베이스 쿼리 창에서 SELECT 쿼리를 실행할 수 있습니다. XMLSpy를 사용하면 모든 XML 데이터를 직접 편집할 수 있으며, 고급 XML 편집 기능을 활용할 수 있습니다.

물론, XMLSpy의 텍스트 보기와 그리드 보기 등 익숙한 모든 기능들이 제공됩니다.

수정 작업을 완료한 후, XMLSpy의 "파일 / 저장" 메뉴 옵션을 사용하면 수정된 XML 문서를 클라우드 기반의 SQL Azure 데이터베이스 내 "JobCandidate" 테이블의 해당 행에 저장할 수 있습니다.

XQuery를 사용하여 XML 데이터 파싱하기 XMLSpy의 XQuery 편집기는 XQuery 구문과 상황에 맞는 도움말 기능을 내장하고 있어, SQL Azure 데이터베이스에 저장된 XML 데이터를 파싱하는 XQuery 문을 작성할 수 있습니다. 아래의 XQuery 문은 JobCandidateID가 7보다 작은 XML 이력서에서 주소를 추출하여 반환합니다.

XQuery 문장은 "데이터베이스 쿼리" 창에서 실행할 수 있으며, 실행 결과는 XMLSpy에서 즉시 확인하고 작업에 활용할 수 있습니다.

물론, XQuery 결과는 텍스트 보기 또는 표 보기에서도 편집할 수 있습니다.

데이터베이스 쿼리 창 또는 XML 편집기에서 쿼리 결과를 저장할 수 있습니다. Altova 도구를 사용하여 SQL Azure 클라우드 환경에서 XML 데이터를 처리할 때 얼마나 효율적으로 작업할 수 있는지 직접 경험해 보세요. Altova MissionKit for Software Architects는 XMLSpy, DatabaseSpy 및 기타 XML, 데이터베이스, UML 도구를 포함하는 통합 솔루션으로, 30일 무료 체험판을 다운로드하여 사용해 보실 수 있습니다.