SCHEMA STUDIO / DATABASE DESIGN

ERD 다이어그램으로 데이터베이스 스키마 설계하기

ERD(Entity Relationship Diagram)는 데이터의 대상과 관계를 표현하는 그림입니다. 관계형 데이터베이스의 물리 ERD에서는 테이블, 컬럼, 기본키(PK), 외래키(FK)를 함께 보며 저장 구조를 검토합니다. Schema Studio에서는 브라우저에서 이 구조를 편집하고 설계 의도를 설명할 수 있습니다.

고객 한 명에 여러 주문을 연결합니다. orders.customer_id가 customers.id를 참조합니다.
고객 한 명에 여러 주문을 연결합니다. orders.customer_id가 customers.id를 참조합니다.
K는 기본키, *는 필수 컬럼입니다. 작은 화면에서는 그림을 좌우로 스크롤하거나 눌러서 크게 볼 수 있습니다.

바로 가져올 수 있는 DBML 예제

고객 한 명이 여러 주문을 만들 수 있습니다. orders.customer_id가 customers.id를 참조하는 다대일 관계를 아래 DBML로 표현합니다. 고객 이름을 주문마다 반복해서 저장하는 대신 식별자로 연결하는 예제입니다.

ERD DBML
Table customers {
  id integer [pk]
  name varchar(100) [not null]
}

Table orders {
  id integer [pk]
  customer_id integer [not null]
  total decimal(12,2) [not null]
}

Ref: orders.customer_id > customers.id

아래 버튼은 이 코드에서 만든 예제를 새 문서로 엽니다. 가입 없이 편집할 수 있으며 기존 작업은 보관됩니다. 직접 가져오려면 코드를 복사해 편집기의 가져오기에 붙여넣으세요.

이 예제로 시작하기 →

테이블과 관계를 읽는 순서

먼저 customers와 orders가 각각 무엇을 저장하는지 정하고 PK인 id로 각 행을 구분합니다. 다음으로 FK인 customer_id가 참조하는 테이블과 컬럼을 확인합니다. FK가 NOT NULL이면 주문에 고객 식별자가 필요합니다. 관계선만 보지 말고 컬럼의 필수 여부도 함께 검토하세요.

다대다 관계는 연결 테이블로 풀어내기

상품 한 개가 여러 주문에 포함되고 주문 하나에도 여러 상품이 있다면 order_items 같은 연결 테이블을 둡니다. order_id와 product_id로 양쪽을 참조하고 수량처럼 그 연결에 속하는 정보를 저장합니다. 같은 상품을 주문에 여러 행으로 허용할지 먼저 결정한 뒤 고유 조건을 설계하세요.

논리 모델과 실제 DB 제약 구분하기

업무상 관련이 있어도 실제 외래키가 없는 관계일 수 있습니다. Schema Studio의 설명용 관계와 외래키 관계를 구분해 표현하세요. 다이어그램을 수정해도 운영 데이터베이스에 자동으로 적용되지는 않습니다. 변경 사항은 별도 마이그레이션 검토와 테스트를 거쳐 반영합니다.

지금 무료로 사용할 수 있는 기능

현재 Free에서 DBML·Schema Studio JSON 가져오기와 내보내기, 테이블·관계 편집을 제공합니다. 로그인 후 클라우드에 저장할 수 있으며 중요한 작업은 JSON으로 백업하세요. 지원 범위의 PostgreSQL·MySQL DDL 가져오기, PostgreSQL 수집 쿼리와 PNG 출력도 무료입니다. SQL·SVG 출력은 준비 중입니다. MySQL 입력은 PostgreSQL 문서 모델로 변환되며 원본과 경고를 확인하세요.

요금제와 저장 한도 확인 →

다음 설계 살펴보기