출처 - http://one-p.tistory.com/entry/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4ERD

ERD(Entity Relationship Diagram)란?

- 계략적으로 데이터 및 데이터들의 관계를 표현한 도식화된 그림(Diagram)
- 분석가들은 조직의 데이터를 이해하고, 이를 응용시스템에 이용하고자 ERD를 작성
- 엔터티(Entity)란 데이터베이스에 저장할 정보의 주체 혹은 대상
- 엔터티의 예로는 고객, 학생, 부서, 계좌 등이 있음
- ERD에서 엔터티는 네모로 표시 함

ERD의 카디넬러티(Cardinality)
 

카디넬러티(Cardinality) : 엔터티들간의 수적 관계를 명시하는 표현

 

 

 


ERD의 예

- 우리 학교에는 학생들이 여러 과목을 수강할 수 있다.
- 한 과목을 여러 학생들이 수강한다.
- 학생들은 각각 한 개의 사물함을 소유하고, 여러 개의 교과서도 갖는다.

 

 

 


키(Key)의 이해

- 기본키(Primary key) : 다른 레코드와(Row) 자신의 레코드를 구별 시켜 주는 키 

 

   ex) 주민등록번호, 자신만이 가지는 고유한 것
- 외래키(Foreign key) : 다른 테이블과의 관계를 표시하는 키

 


데이터 무결성(Data Integrity)의 의미

- 데이터 무결성은 데이터의 정확성 또는 유효성을 의미
- 무결성 파괴의 예
   어떤 학생이 수강 신청을 하려고 했으나, 이 학생의 정보가 존재하지 않는다.
   어떤 학생이 학교를 그만 두었으나, 특정 과목 수강자 명단에 이 학생이 그대로 존재 함
- 일관된 데이터베이스 상태를 정의하는 규칙들을 묵시적 혹은 명시적으로 정의하여 무결성 유지
- 데이터베이스 보안 기능이 권한이 없는 사용자로부터 데이터베이스를 보호하기 위함이라면, 무결성은 권한이 있는 사용자로부터 데이터를
   보호하기 위 함

- 스키마 정의 시 무결성 제약조건을 정의하며, 한 번 정의된 조건은 향후 데이터베이스에 정보가 갱신될 경우 DBMS에 의해 검사가 이루어짐

데이터 무결성의 종류

도메인 제약조건(Domain Constraint)
 

- 각 애트리뷰트의 값이 지정된 데이터형으로 제한 됨
- 애트리뷰트의 기본값, 범위, NULL 허용 여부들도 제한 가능 

 



기본키 

 

제약조건(Primary key Constraint)

- 기본키의 경우 중복된 값 및 NULL 값이 허용 될 수 없음
- 기본키가 아니라도 UNIQUE 설정을 통해 중복 값 불허 가능

 


참조 무결성 제약조건(Referential Integrity Constraint)

- 두 데이터 간에 데이터의 결함을 없애는 제약조건

 

 

 
삽입

(Inset)시 무결성 유지

- 자식테이블에 새로운 레코드가 삽입 될 경우 외래키의 값은 부모테이블에 존재하는 값이거나 NILL 이어야 한다.

삭제(Delete)시 무결성 유지

- 부모테이블의 레코드를 삭제할 경우 자식테이블의 외래키가 참조 하고 있을 경우는 삭제 불가 이거나 연쇄(Cascade) 삭제(On Delete Cascade)

수정(Update)시 무결성 유지

- 자식테이블 레코드의 외래키를 수정할 경우 부모테이블의 해당 키에 존재하는 값 범위 내에서 수정가능 

+ Recent posts