티스토리 뷰

데이터 무결성 제약 조건

무결성 - 데이터가 결함없이 정확하고 완전한 상태를 의미합니다. 

■ 데이터 무결성 제약 조건은 데이터베이스에 들어 있는 데이터의 정확성을 보장하기 위해 부정확한 자료가

      데이터 베이스 내에 저장되는 것을 방지하기 위한 제약조건을 말합니다.

 

■ 테이블에 부적절한 데이터가 입력되는 것을 방지하기 위해 테이블을 설계할 때, 각 컬럼에 대해서 정의한 규칙을 말합니다.

 

무결성의 종류

개체 , 도메인, 참조, 사용자 정의, NULL, 고유, 키, 관계 무결성 등이 있습니다.

 

출처 :  https://jerryjerryjerry.tistory.com/50

 

 

 

개체 무결성 (NULL 입력 x + 중복허용 x => PK = UNIQUE + NOT NULL)

개체 무결성은 기본 테이블의 기본키를 구성하는 어떤 속성도 NULL값이나 중복값을 가질 수 없습니다.

* [학생] 릴레이션에서 ‘학번’을 기본키로 지정했다면 ‘학번’ 속성은 NULL이 되어서는 안됩니다.

 

도메인 무결성

주어진 속성 값이 정의된 도메인에 속한 값이어야 한다는 규정입니다.(속성의 기본값, 체크, 널 값의 허용여부 등)

* ‘성별’이라는 속성에서 ‘남’, ‘여’를 제외한 데이터는 제한되어야 합니다.

 

참조 무결성

외래키 값은 NULL이거나 참조 릴레이션의 기본키 값과 동일해야합니다.

즉, 릴레이션은 참조할 수 없는 외래키 값을 가질수 없으며, 

외래키와 참조하려는 테이블의 기본키는 도메인과 속성 개수가 같아야합니다.

자식 릴레이션의 외래 키의 값은 참조된 부모 릴레이션의 기본 키 값과 같아야 하며, 
자식 릴레이션의 값이변경될 때 부모 릴레이션의 제약을 받는다는 조건입니다.

RDBMS에서는 컬럼의 값에 따라 테이블끼리 연결하는데 값을 참조하는 쪽의 테이블을 자식 테이블, 
값을 가진 컬럼을 외래 키 라고 합니다.

참조되는 쪽의 테이블을 부모 테이블, 
값을 가진 컬럼을 부모 키 라고 부르며 부모 키는 기본 키 또는 고유 키여야 합니다.

즉, 참조하는 테이블 (자식 테이블)의 값이 참조되는 테이블 (부모 테이블)의 컬럼의 값에 존재하면 된다는 것입니다.

* [수강] 릴레이션에서 ‘학번’ 속성에는 [학생] 릴레이션의 ‘학번’ 속성에 없는 값은 입력할 수 없다.

 

NULL 무결성

특정 컬럼이 아무런 값을 입력받지 않도록 설정하거나, 무조건 값을 입력 받도록 설정하는 것입니다.

데이터가 없다면, NULL을 저장하여, 데이터가 존재하지 않는다는 것을 표현합니다.

* [학생] 릴레이션 정의 시 ‘과목’ 속성에 NULL 값이 올 수 없도록 제한했다면 ‘과목’ 속성에 NULL이 있어서는 안됩니다.

 

고유(UNIQUE) 무결성

릴레이션의 특정 속성에 대해 각 튜플이 갖는 속성값들이 서로 달라야 한다는 것입니다.

테이블에 소속된 특정 컬럼이 중복된 키를 가질 수 없는 조건입니다.

사용자 아이디, 이메일과 같은 고유한 정보를 저장할 때 사용합니다.

 

키 무결성

적어도 하나의 키가  존재해야 합니다.

 

 

 

출처 : https://shuu.tistory.com/68

'프로그래밍 기초 > database' 카테고리의 다른 글

SQL Injection이란?  (1) 2024.02.08
1:1관계, 1:N관계, N:M관계  (1) 2024.02.06
DDL, DML, DCL, TCL 이란?  (0) 2024.02.02
MongoDB(작업 코드에 MongoDB적용하기)  (1) 2024.01.26
node.js 에 mysql 연결하기 (RDS)  (1) 2024.01.25
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함