메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

Integrity Constraints: 두 판 사이의 차이

noriwiki
Pinkgo (토론 | 기여)
새 문서: 상위 문서: SQL ==개요== ==각주== 분류:데이터베이스 시스템
 
Pinkgo (토론 | 기여)
편집 요약 없음
2번째 줄: 2번째 줄:


==개요==
==개요==
'''Integrity constraint'''는 승인된 사용자에 의해 데이터베이스에 적용된 갱신(update)에 의한 변경 데이터의 일관성(consistency)를 잃지 않도록 보장해준다. 즉, integrity constraint는 데이터베이스를 우발적인 손상으로부터 보호하는 역할을 한다.<ref>이는 무단 사용자의 접근을 막는 security constraint와는 대조적이다.</ref> Integrity constraint의 예는 다음과 같다:
* 강사(instructor)의 이름은 null일 수 없다.
* 두 명의 강사가 동일한 ID를 가질 수 없다.
* course 릴레이션의 모든 학과(department) 이름은 department 릴레이션에 존재해야 한다.
* 학과의 예산은 반드시 $0.00보다 커야 한다.
일반적으로 데이터베이스에 관련된 임의의 논리 조건(predicate)은 integrity constraint가 될 수 있다. 하지만 어떤 조건은 검사 비용이 높을 수 있기 때문에 대부분의 DBMS는 비용이 적게 드는(minimal overhead) constraint 만을 명시하도록 한다.<br>
Integrity constraint는 보통 데이터베이스 스키마(schema) 설계 과정의 일부로 인식되며, <code>create table</code> 명령의 일부로 릴레이션을 생성할 때 선언된다. 또한 아래와 같이 기존 릴레이션에 integrity constraint를 추가할 수 있다.
<syntaxhighlight lang="cpp">
alter table <table name> add <constraint> ...
</syntaxhighlight>
Integrity constraint에는 [[Relational Model#Keys|primary key constraint]]나 [[Relational Model#Keys|foreign key constraint]]도 존재하지만 해당 문서에는 다른 종류의 constraint에 대해 알아본다.
==Constraints on a Single Relation==


==각주==
==각주==
[[분류:데이터베이스 시스템]]
[[분류:데이터베이스 시스템]]

2025년 4월 9일 (수) 13:22 판

상위 문서: SQL

개요

Integrity constraint는 승인된 사용자에 의해 데이터베이스에 적용된 갱신(update)에 의한 변경 데이터의 일관성(consistency)를 잃지 않도록 보장해준다. 즉, integrity constraint는 데이터베이스를 우발적인 손상으로부터 보호하는 역할을 한다.[1] Integrity constraint의 예는 다음과 같다:

  • 강사(instructor)의 이름은 null일 수 없다.
  • 두 명의 강사가 동일한 ID를 가질 수 없다.
  • course 릴레이션의 모든 학과(department) 이름은 department 릴레이션에 존재해야 한다.
  • 학과의 예산은 반드시 $0.00보다 커야 한다.

일반적으로 데이터베이스에 관련된 임의의 논리 조건(predicate)은 integrity constraint가 될 수 있다. 하지만 어떤 조건은 검사 비용이 높을 수 있기 때문에 대부분의 DBMS는 비용이 적게 드는(minimal overhead) constraint 만을 명시하도록 한다.
Integrity constraint는 보통 데이터베이스 스키마(schema) 설계 과정의 일부로 인식되며, create table 명령의 일부로 릴레이션을 생성할 때 선언된다. 또한 아래와 같이 기존 릴레이션에 integrity constraint를 추가할 수 있다.

alter table <table name> add <constraint> ...

Integrity constraint에는 primary key constraintforeign key constraint도 존재하지만 해당 문서에는 다른 종류의 constraint에 대해 알아본다.

Constraints on a Single Relation

각주

  1. 이는 무단 사용자의 접근을 막는 security constraint와는 대조적이다.