개발자공부일기

ER 모델,Primary Key ,Foreign Key 본문

CS지식/데이터베이스

ER 모델,Primary Key ,Foreign Key

JavaCPP 2025. 2. 21. 21:04

ER 모델 (Entity-Relationship Model)

ER 모델은 데이터베이스 설계를 위한 개념적 모델로, 현실 세계의 데이터를 엔터티(Entity), 속성(Attribute), 관계(Relationship)로 표현합니다.

  • 엔터티(Entity): 데이터를 저장할 대상 (예: 학생, 강의, 고객 등)
  • 속성(Attribute): 엔터티가 가지는 정보 (예: 학생의 학번, 이름, 나이 등)
  • 관계(Relationship): 엔터티 간의 연관성 (예: 학생이 강의를 수강한다)

이를 시각적으로 표현한 것이 ER 다이어그램(ERD)이며, 데이터베이스를 설계할 때 많이 사용됩니다.

ER diagram은 테이블 간의 관계를 나타내는 도표입니다. 각 테이블의 이름, 컬럼의 PKey, FKey, Unique Key 여부, 필드 명, 필드의 타입 등을 기재하고, 각 테이블의 컬럼이 다른 테이블과 어떻게 연관되어있는지를 화살표로 이어주는 방식으로 표현합니다. 각 화살표의 끝 단에는 0, 1, 혹은 n을 나타내는 기호가 표시되어 있어 각 테이블이 어떤 컬럼을 기준으로 어떠한 관계로 이루어져 있는지를 쉽게 알 수 있습니다.

 

Primary Key

Primary Key는 데이터베이스의 테이블에서 고유한 데이터(행)를 식별하는데 사용되는 key 혹은 key의 모음을 의미합니다. 단일 PKey를 사용하는 경우 PKey에 해당하는 컬럼은 고유한 값을 가져야하며, 복수의 컬럼을 PKey로 지정한 경우 두 개의 컬럼의 조합이 고유해야합니다. ex)학생 테이블의 학번

 Foreign Key

 Foreign Key는 다른 테이블의 Primary Key를 참조하고 있는 컬럼입니다. 두 개 이상의 테이블을 Join할 때 해당 Key를 기준으로 삼을 수 있습니다.


ex)수강 내역 테이블에서 학번 컬럼이 학생 테이블의 학번(Primary Key)을 참조하는 Foreign Key가 될 수 있습니다.
이를 통해 학생과 수강 내역을 연결할 수 있습니다.

 

 

'CS지식 > 데이터베이스' 카테고리의 다른 글

SQL JOIN  (0) 2025.03.10
무결성  (0) 2025.02.24
데이터베이스 정규화  (0) 2024.12.03