DatabaseSpy를 사용하여 익숙하지 않은 데이터베이스를 탐색하기
새로운 앱을 개발하는 소프트웨어 개발자, 다양한 기업에서 일하는 데이터 전문가, 심지어 데이터베이스 관리자조차도 익숙하지 않은 데이터베이스를 자주 접하게 되며, 테이블과 관계를 빠르게 파악할 수 있는 데이터베이스 도구가 필요합니다.
Altova DatabaseSpy는 그래픽 기반의 데이터베이스 디자인 편집기를 갖춘 독특한 다중 데이터베이스 쿼리, 설계 및 비교 도구입니다. 이 도구를 사용하면 사용자가 익숙하지 않은 데이터베이스를 탐색할 때 테이블, 관계, 심지어 데이터 유형 정의까지 빠르게 시각적으로 확인할 수 있으며, 이는 데이터베이스 유형별로 고유한 특징을 파악하는 데 도움이 됩니다.

DatabaseSpy는 다음과 같은 주요 데이터베이스를 모두 지원합니다:
- 불새
- IBM DB2®
- 인포믹스(Informix)
- Microsoft Access™
- Microsoft® Azure SQL 데이터베이스
- Microsoft® SQL Server®
- MySQL®
- 오라클(Oracle)
- PostgreSQL (포스트그레스SQL)
- Progress OpenEdge
- SQLite는 임베디드형 관계형 데이터베이스 관리 시스템입니다
- Sybase®
Chinook은 SQL Server, Oracle, MySQL, DB2, PostgreSQL, SQLite 등 다양한 데이터베이스 시스템에서 사용할 수 있는 오픈 소스 샘플 데이터베이스입니다. 이 데이터베이스는 디지털 미디어 상점을 위한 데이터 모델을 구현하고 있습니다. 이제 DatabaseSpy를 사용하여 SQLite 버전으로 제공되는 Chinook 데이터베이스를 살펴보겠습니다.
DatabaseSpy 연결 마법사를 사용하면 SQLite 데이터베이스에 빠르게 연결하고, 해당 데이터베이스를 새로운 DatabaseSpy 프로젝트에 추가할 수 있습니다


DatabaseSpy 프로젝트는 여러 개의 데이터베이스, 심지어 서로 다른 유형의 데이터베이스에 대한 연결을 포함할 수 있습니다. 온라인 브라우저 도우미 창을 사용하면 테이블 목록을 즉시 확인하고 행 수를 생성할 수 있습니다

더 복잡한 데이터베이스의 경우, 온라인 브라우저는 여러 데이터베이스 스키마, 뷰, 프로시저, 함수 등을 보여줍니다. 예를 들어, SQL Server의 AdventureWorks 샘플 데이터베이스를 볼 때 다음과 같은 내용을 확인할 수 있습니다

저희는 디지털 음악 스토어의 데이터베이스에 관심이 있습니다. 왜냐하면 저희도 추가적인 미디어 파일 라이브러리에 대한 메타데이터를 담고 있는 CSV 파일을 가지고 있으며, 이 데이터를 데이터베이스에 추가하고 싶기 때문입니다. 해당 CSV 파일에는 다음과 같은 필드가 포함되어 있습니다

온라인 브라우저 창에서 "트랙" 테이블 옆의 "+" 버튼을 클릭하거나, 더 좋은 방법은 테이블을 새 디자인 편집기 창에서 열 수 있습니다

"Track" 테이블에는 다른 테이블을 참조하는 키들이 포함되어 있습니다. 마우스 오른쪽 버튼을 클릭하면 컨텍스트 메뉴가 나타나며, 이를 통해 참조된 테이블을 추가하고, 엔터티 관계 다이어그램과 유사한 방식으로 테이블 간의 관계를 시각적으로 표현하여 더 완전한 정보를 제공할 수 있습니다.

이 다이어그램과 CSV 파일의 새로운 필드를 비교해 보면 문제가 있음을 알 수 있습니다. 저희 데이터에는 트랙의 아티스트와 앨범 아티스트를 구분하는 별도의 필드가 포함되어 있습니다. 이는 영화 사운드트랙과 같이 다양한 아티스트가 참여하는 앨범의 경우, 앨범에 "Various Artists"와 같이 일반적인 명칭이 사용될 수 있지만, 각 트랙에 대한 정확한 아티스트 정보를 기록하고 싶기 때문입니다.
현재의 "트랙" 테이블은 각 트랙에 대한 음악가 정보를 직접적으로 포함하고 있지 않습니다. 대신, "앨범 ID"를 참조하며, 이 "앨범 ID"는 다시 "아티스트" 테이블을 참조하여 해당 앨범의 아티스트 정보를 제공합니다.
데이터베이스 테이블을 시각적으로 편집합니다
문제 없습니다! "트랙" 테이블에서 "단가" 열 바로 아래에 있는 더하기(+) 기호 아이콘을 클릭하면 테이블에 새 열을 추가할 수 있습니다. DatabaseSpy는 기본값으로 설정된 열을 추가합니다

먼저, 새로운 열의 이름을 변경하고 데이터 유형을 지정할 수 있습니다. DatabaseSpy는 이 데이터베이스에서 사용할 수 있는 모든 유효한 데이터 유형을 선택할 수 있도록 편리하게 팝업 목록을 제공합니다. "트랙 아티스트"를 위한 새로운 열은 앨범의 "ArtistId"를 대체해야 할 경우에만 드물게 사용되므로, "작곡가" 열과 마찬가지로 제한된 길이의 텍스트 데이터 유형으로 설정하는 것이 좋습니다.

위 스크린샷에서 "TrackArtist" 열 이름 옆에 있는 "+" 기호를 주목하십시오. DatabaseSpy는 다이어그램을 편집하는 동안 실제로 데이터베이스를 변경하지 않습니다. 대신, DatabaseSpy는 별도의 창에서 데이터베이스 변경 스크립트를 자동으로 생성합니다.

이를 통해 사용자는 디자인 편집기에서 여러 변경 사항을 안전하게 수정할 수 있습니다. 모든 수정이 완료되면, 스크립트를 직접 실행하거나, 새로운 SQL 창에서 스크립트를 열어 수정하거나, 스크립트를 파일로 저장하거나, 모든 수정을 취소하고 스크립트를 버릴 수 있습니다.
스크립트를 SQL 편집기 창에서 열고, 텍스트 필드의 길이 제한을 설정하겠습니다. 이 제한은 "Composer" 열에 설정된 제한과 동일하게 적용됩니다

저희는 편집기 창에서 스크립트를 실행하고, 데이터베이스를 다시 로드하여 디자인 편집기에서 업데이트된 내용을 확인할 수 있습니다.

디자인 편집기는 익숙하지 않은 데이터베이스를 탐색하는 데 도움이 되는 편리하고 직관적인 기능 중 하나입니다. 무료 체험판을 다운로드하여 DatabaseSpy가 데이터베이스 쿼리, 시각화, 관리, 비교, 그리고 결과 분석을 얼마나 간편하게 만들어주는지 직접 확인해 보세요.