본문으로 건너뛰기

관계 개요

한눈에 보기

관계(Relationship)는 두 테이블을 연결하는 것입니다. 관계를 만들면 화면에서 드롭다운 선택, 서브테이블, 자동 연동 같은 편리한 기능이 자동으로 생깁니다.

소개​

업무 데이터는 서로 연관되어 있습니다. 발주서에는 거래처 정보가 필요하고, 발주서 안에는 여러 품목이 포함됩니다. 이런 연관 관계를 테이블 간의 관계로 표현합니다.

관계를 설정하면 화면에서 자동으로:

  • 드롭다운 선택: 거래처 목록에서 선택할 수 있습니다
  • 서브테이블: 발주서 안에 품목 목록이 표시됩니다
  • 자동 연동: 품목을 선택하면 단가가 자동으로 채워집니다

관계 타입 비교​

세 가지 관계 타입​

관계 타입기호의미화면 결과실무 예시
1:1─하나에 하나FK 드롭다운직원 ↔ 사원증
1:N─<하나에 여러 개서브테이블발주서 → 발주품목(여러 행)
M:N>─<여러 개가 여러 개중간 테이블품목 ↔ 공급업체

관계 타입별 화면 결과 비교​

관계 타입별 화면 비교

세 가지 관계 타입이 실제 양식 화면에서 어떻게 표현되는지 비교한 화면입니다.

1:1 관계
← FK 드롭다운
1:N 관계
발주서 양식
품목수량단가금액
A0011001,000100,000← 서브테이블
A002502,000100,000
M:N 관계
품목 양식
☑ (주)A사 ← 다중 선택
☑ (주)B사
☐ (주)C사

캔버스에서 관계 만들기​

관계 생성 방법​

관계 드래그 생성

한 테이블 노드에서 다른 테이블 노드로 드래그하면 관계가 만들어집니다.

  1. 캔버스에서 첫 번째 테이블 노드의 연결 포인트에 마우스를 가져갑니다
  2. 클릭한 채 드래그하여 두 번째 테이블 노드까지 끌어갑니다
  3. 연결선이 만들어지면서 자동으로 관계 설정 패널이 열립니다

관계 설정 패널​

관계 속성 패널

관계 연결선을 클릭하면 오른쪽에 관계 속성 패널이 열립니다.

관계 속성 패널에서 설정할 수 있는 항목:

설정 항목설명
관계 타입1:1, 1:N, M:N 중 선택
관계 이름관계의 식별 이름
표시 컬럼(displayColumn)FK 드롭다운에 표시할 컬럼
서브테이블 설정1:N에서 서브테이블 세부 설정

관계 설계 가이드​

어떤 관계 타입을 선택해야 할지 모르겠다면, 이 질문에 답해보세요:

관계 타입 판단 질문

"A 하나에 B가 몇 개 연결될 수 있는가?"

A 1개 : B 1개
→
1:1 관계
A 1개 : B 여러 개
→
1:N 관계
A 여러 개 : B 여러 개
→
M:N 관계

실무 판단 예시​

관계판단타입
직원 - 사원증직원 1명에 사원증 1개1:1
부서 - 직원부서 1개에 직원 여러 명1:N
발주서 - 발주품목발주서 1건에 품목 여러 행1:N
거래처 - 발주서거래처 1곳에 발주서 여러 건1:N
품목 - 공급업체품목 1개에 공급업체 여러 곳, 공급업체 1곳에 품목 여러 개M:N
팁

가장 많이 사용되는 관계 타입은 1:N입니다. 제조업 앱의 80% 이상이 1:N 관계를 사용합니다. 1:N 관계만 잘 이해하면 대부분의 앱을 설계할 수 있습니다.

실무 예시​

상황: ERP 구매 모듈의 관계 설계

거래처 마스터
— 1:N →
발주서
— 1:N →
발주품목
↓ N:1
품목마스터
  • 거래처 → 발주서: 1:N (한 거래처에 여러 발주서)
  • 발주서 → 발주품목: 1:N (한 발주서에 여러 품목 행)
  • 품목마스터 → 발주품목: 1:N (한 품목이 여러 발주에 등장)

자주 묻는 질문​

Q: 관계를 나중에 변경할 수 있나요? A: 배포 전이라면 관계 타입을 자유롭게 변경할 수 있습니다. 배포 후에는 데이터 구조 변경이 제한될 수 있습니다.

Q: 하나의 테이블에 여러 관계를 만들 수 있나요? A: 네, 하나의 테이블이 여러 테이블과 각각 관계를 맺을 수 있습니다.

Q: 관계를 삭제하면 데이터도 삭제되나요? A: 관계를 삭제해도 테이블의 데이터는 유지됩니다. 다만, FK 컬럼과 관련 화면 설정은 함께 삭제됩니다.

다음 단계​