Visio에서 데이터베이스 모델 다이어그램 서식 파일을 사용하면 새 모델을 만들거나 기존 데이터베이스를 모델로 리버스 엔지니어링할 수 있습니다.

데이터베이스 아이콘, 화살표, 데이터베이스를 나타내는 Visio 다이어그램

이 문서에서는 데이터베이스 모델을 만드는 방법과 모델을 만든 후에 모델로 수행할 수 있는 작업에 대해 설명합니다.

참고: 데이터베이스 모델 다이어그램은 특정 버전의 Visio에서만 사용할 수 있습니다. 자세한 내용은 데이터베이스 모델링 기능을 찾을 수 없는 경우를 참조하세요.

1: 데이터베이스 모델 다이어그램 시작

2: 다이어그램 구체화

데이터베이스 모델 다이어그램을 만든 후에는 다이어그램 구체화 작업이 시작됩니다. 모델의 세 가지 기본 구성 요소를 추가하고 사용자 지정할 수 있습니다.

  • 엔티티(또는 표),

  • (표에 대한 사실 설명), 그리고

  • 관계 (표 간 연결). 관계는 일대일, 일대다 또는 다대다일 수 있습니다.

모델에 기능을 추가하는 방법에 대한 지침을 열려면 아래 제목을 선택합니다.

데이터베이스 모델 다이어그램 서식 파일과 함께 제공되는 두 개의 스텐실이 있습니다. 다이어그램의 구조를 구체화하기 시작하면 나에게 적합한 스텐실에서 작업합니다.

  • 엔터티 관계 스텐실을 사용하여 SQL92 이하 표준을 기반으로 하는 데이터베이스를 모델링합니다.

  • 형식을 사용하기 위한 추가 셰이프가 있는 개체 관계형 스텐실을 사용하여 SQL99 이상 표준을 기반으로 하는 데이터베이스를 모델링합니다.

엔터티 셰이프를 사용하여 다이어그램에서 테이블을 만듭니다.

  1. 엔터티 관계 또는 개체 관계형 스텐실 중 하나에서 엔터티 셰이프를 그리기로 끕니다.

  2. 셰이프를 두 번 클릭하여 데이터베이스 속성 창을 엽니다.

  3. 범주에서 정의를 클릭하고 테이블의 이름을 입력합니다.

  4. 범주에서 을 클릭하고 이름을 입력한 다음 데이터 형식을 선택합니다.

  5. Null 값을 가질 수 없는 열의 필수 확인란을 선택합니다.

  6. 데이터베이스 테이블에서 각 행을 고유하게 식별하는 열의 PK(기본 키) 확인란을 선택합니다.

  7. 범주에서 인덱스, 트리거, 검사 또는 확장을 클릭하여 이러한 선택적 요소를 만듭니다.

데이터베이스 속성 창을 사용하여 데이터 형식 및 기본 키를 포함한 열의 속성을 추가하거나 변경합니다.

  1. 다이어그램에서 테이블을 두 번 클릭합니다.

  2. 데이터베이스 속성 창의 범주 아래에서 을 클릭합니다.

  3. 첫 번째 빈 실제 이름 셀을 클릭하고 이름을 입력합니다.

  4. 열의 데이터 형식을 변경하려면 열의 데이터 형식 필드를 클릭한 후 데이터 형식을 목록에서 선택하거나 목록에 입력합니다. 예를 들어 decimal(8,2) 또는 char(30)를 입력할 수 있습니다.

  5. Null 값을 방지하려면 필수 확인란을 선택합니다.

  6. 열을 기본 키로 지정하려면 PK 확인란을 선택합니다.

  7. 범주를 클릭할 때 표시되는 속성 외에 추가 열 속성을 보려면 열을 선택한 다음 편집을 클릭합니다.

관계는 기본 및 외래 키를 사용하여 데이터베이스에서 한 테이블의 행을 관련 테이블의 행과 일치시킬 수 있습니다. 해당 관계를 다이어그램에 표시할 수 있습니다. 또한 카디널리티(예: 일대다)를 설정하고 Crow’s foot, 관계형 또는 IDEF1X 표기법을 사용하여 카디널리티를 표시할 수 있습니다. 데이터베이스 모델 다이어그램 서식 파일에 이러한 표기법과 함께 다대다 관계를 표시할 수는 없습니다.

테이블 간에 관계를 만듭니다.

  1. 다이어그램에 두 테이블이 모두 표시되는지 확인합니다. 기존 데이터베이스에서 모델을 리버스 엔지니어링한 경우 테이블 및 보기 창에서 드로잉 페이지로 테이블 하나 또는 둘 모두를 끌어야 할 수 있습니다.

  2. 관계의 기본 키 쪽에 사용할 테이블을 두 번 클릭합니다.

  3. 데이터베이스 속성 창의 범주 아래에서 을 클릭합니다.

  4. 눈금에서 테이블의 각 행을 고유하게 식별하는 데 사용할 열을 클릭하고 PK 확인란을 선택하여 해당 열을 기본 키로 설정합니다.

  5. 개체 관계형 또는 엔터티 관계 스텐실에서 관계 셰이프를 끌어서 페이지의 빈 공간에 놓습니다.

  6. 테이블의 위쪽 끝을 부모 테이블과 연결합니다.

  7. 다른 쪽 끝을 자식 테이블에 연결합니다.

    두 번째 테이블에 기본 키와 이름이 같은 열이 포함되어 있지 않으면 모델러가 해당 열을 두 번째 테이블에 외래 키로 추가합니다.

    참고: 관계 선이 사라지면 데이터베이스 탭의 관리 그룹에서 표시 옵션을 클릭합니다. 관계 탭의 표시 아래에서 관계 확인란을 선택합니다.

관계의 카디널리티를 설정합니다.

  1. 관계를 두 번 클릭합니다.

  2. 데이터베이스 속성 창의 범주 아래에서 기타를 클릭합니다.

  3. 카디널리티 아래에서 관계에 가장 적합한 카디널리티를 선택합니다. 일대다 관계의 경우 가장 좋은 선택은 0 또는 그 이상 또는 1 또는 그 이상입니다. 일대일 관계의 경우 가장 좋은 선택은 0 또는 그 이상 또는 정확히 1입니다.

3: 데이터 검색 및 업데이트 기능 추가

인덱스, 검사 절 및 트리거 만들기와 같이 다이어그램에 다른 구체화를 적용하려면 아래 머리글을 선택하여 다음 중 하나를 추가하는 방법에 대한 지시 사항을 엽니다.

인덱스는 쿼리를 실행할 때 데이터베이스의 성능 또는 속도를 개선합니다.

  1. 데이터베이스 모델 다이어그램을 엽니다.

  2. 인덱스를 추가할 테이블을 두 번 클릭하고 데이터베이스 속성 창의 범주 목록에서 인덱스를 클릭합니다.

  3. 새로 만들기를 클릭합니다.

  4. 인덱스 만들기 대화 상자에서 인덱스의 이름을 입력한 다음 확인을 클릭합니다.

  5. 인덱스 유형 목록에서 고유하거나 고유하지 않은 인덱스를 만드는 옵션을 선택합니다.

  6. 사용 가능한 열 목록에서 이 인덱스에 포함할 각 열의 이름을 선택한 다음 추가 >를 클릭합니다.

  7. 인덱싱된 열 목록에서 오름차순 확인란을 선택하여 오름차순으로 인덱스를 만들거나 확인란의 선택을 취소하여 내림차순으로 인덱스를 만듭니다.

    데이터베이스 모델 다이어그램이 업데이트됩니다.

보기를 저장된 쿼리로 생각할 수 있습니다. 여러 테이블에서 동일한 정보에 반복적으로 액세스해야 하는 경우 또는 사용자가 실제 테이블을 변경할 필요 없이 사용자에게 데이터를 노출하려는 경우 보기가 특히 편리합니다.

엔터티 관계 또는 개체 관계형 스텐실에서 보기 셰이프를 드로잉 페이지로 끕니다.

DBMS(데이터베이스 관리 시스템)에 따라 테이블 또는 보기의 확장 속성을 설정하여 저장 위치를 결정할 수 있습니다.

설정하려는 확장 속성이 포함된 테이블 또는 보기를 두 번 클릭하고 데이터베이스 속성 창의 범주 목록에서 확장을 클릭합니다.

검사 절을 사용하여 열에 입력된 데이터가 특정 값 범위 내에 있는지 확인합니다. 예를 들어 “Age”라는 열의 데이터가 65를 초과하도록 하는 검사 절을 만들 수 있습니다.

  1. 테이블을 두 번 클릭하여 데이터베이스 속성 창을 엽니다.

  2. 범주 아래에서 을 클릭한 다음 검사 절을 추가할 열을 클릭합니다.

  3. 편집을 클릭합니다.

  4. 열 속성 대화 상자의 검사 탭에서 원하는 제약 조건을 입력합니다. 선택 항목에 대한 자세한 내용은 열 및 필드 속성 대화 상자(검사 탭)를 참조하세요.

    검사 절이 로컬 코드 아래 코드 창에 추가됩니다.

저장 프로시저 및 사용자 정의 함수를 사용하여 동일한 작업을 반복해서 수행하는 데 재사용할 수 있는 코드 패킷을 만들 수 있습니다. 두 항목의 주요 차이점은 사용자 정의 함수는 값을 반환하는 반면, 저장 프로시저는 값을 반환하지 않고 코드를 실행한다는 점입니다.

  1. 데이터베이스 탭의 표시/숨기기 그룹에서 코드 확인란을 선택하여 코드 창을 엽니다.

  2. 전역 코드를 클릭한 다음 새로 만들기를 클릭합니다.

  3. 코드 편집기속성 탭에서 만들려는 코드 유형을 클릭하고 코드의 이름을 입력합니다.

  4. 본문 탭에서 코드를 입력한 다음 확인을 클릭합니다.

트리거를 사용하면 데이터베이스에서 특정 이벤트가 발생할 때 트리거에 지정된 SQL 코드가 실행됩니다.

  1. 테이블을 두 번 클릭하여 데이터베이스 속성 창을 엽니다.

  2. 범주 아래에서 트리거를 클릭한 다음 추가를 클릭합니다.

  3. 속성 탭에서 트리거의 이름을 입력합니다.

  4. 본문 탭에서 코드를 입력한 다음 확인을 클릭합니다.

    트리거가 로컬 코드 아래 코드 창에 추가됩니다.

데이터베이스 모델링 기능을 찾을 수 없는 경우

일부 Visio 버전에서 데이터베이스 모델링 기능 일부 또는 전체가 없는 경우:

  • Visio Standard에는 데이터베이스 모델 다이어그램 서식 파일이 포함되지 않습니다.

  • Visio Professional 및 Premium Edition은 데이터베이스 모델 다이어그램 서식 파일에 대한 리버스 엔지니어링 기능(기존 데이터베이스를 사용하여 Visio에서 모델 만들기)을 지원하지만, 포워드 엔지니어링(Visio 데이터베이스 모델을 사용하여 SQL 코드 생성)을 지원하지 않습니다.

  • Visio for Enterprise Architects에서는 리버스 엔지니어링 및 포워드 엔지니어링을 포함하여 전체 데이터베이스 모델링 기능을 찾을 수 있습니다. Visio for Enterprise Architects는 Visual Studio Professional 및 Visual Studio Team 역할 기반 버전에서 사용할 수 있는 MSDN Premium 구독에 포함됩니다.

어떤 버전의 Visio 확인하려면 도움말 메뉴에서 Microsoft Office Visio 정보를 선택합니다. 버전 이름은 대화 상자에 있는 텍스트의 맨 위 줄에 있습니다. 또는 파일 > 정보를 선택한 다음 제품 정보Visio 정보에서 버전 정보를 볼 수 있습니다.

Visio 플랜 2를 사용 중이고 데이터베이스 모델로 기존 데이터베이스를 엔지니어링하는 방법에 대한 자세한 내용은 기존 데이터베이스 리버스 엔지니어링을 참조합니다. Visio는 SQL Server 2016 및 이전 버전에 대한 리버스 엔지니어링을 지원합니다. Visio는 SQL Server 2019 이상 버전에 대한 리버스 엔지니어링을 지원하지 않습니다 .

참고 항목

데이터베이스 모델 다이어그램에서 관계 정의

데이터베이스 모델 다이어그램에서 보기 만들기 및 편집

데이터베이스 모델 다이어그램에 테이블 및 열 추가

데이터베이스 모델 다이어그램에서 데이터 형식 설정 및 편집

데이터베이스 모델 다이어그램에서 Crow's Foot 표기법 표시

데이터베이스 모델 다이어그램에서 인덱스 만들기 또는 편집

데이터베이스 모델 다이어그램에서 참조 무결성 유지

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.