-
SQL 제약조건(Constraint) 종류 및 개요Data Base_Oracle/SQL 2020. 1. 4. 15:47
제약조건_Constraint
목적에 맞는 데이터만을 저장하기 위해 필요한 조건
효율성, 무결성 추구제약조건 설명 primary key기본키 값이 중복되지 않으면서 반드시 입력돼야 하는 필드에 부여 unique 값이 없어도 되지만 중복되면 안 되는 필드에 부여 check 개발자가 설정하는 제약조건
숫자 : 범위 지정, 문자 : 특정한 값 등록not null 반드시 값을 입력해야 하는 필드를 지정 default 필드의 기본값을 설정하는 제약조건
default를 제약조건에 포함시키지 않는 경우도 있음foreign key외래키 테이블간의 관계를 설정할 때 사용하는 제약조건 § 제약조건 부여 형식
◈ 테이블 생성시 제약조건 부여
[ SQL> create table table명(필드명1 자료형1 제약조건1,
필드명2 자료형2 제약조건2,,,,); ]◈ 테이블 생성시 설정하지 않은 제약조건 부여
[ SQL> alter table 수정table명
add constraint 제약조건이름 제약조건종류(적용필드명); ]
※ 제약조건이름을 꼭 써줘야함※ 제약조건이름 : 시스템 테이블(Oracle 자체 테이블)에 레코드로 기록,
sys~로 저장되기 때문에 찾기 힘듦, 따라서 의미있는 규칙에 따라 분류하는 것이 좋음
ex) 테이블명_제약조건약어(pk)_적용필드명 ex) prtest_pk_id§ 제약조건 제거 형식
[ SQL> alter table 수정table명 drop constraint 삭제할 제약조건이름; ]
# 제약조건 중복 오류 예제
▷ 이미 primary key가 부여된 id필드에 unique 제약조건 부여
[ SQL> alter table prtest add constraint prtest_uk_id unique(id);
1행에 오류: ORA-02261: 고유 키 또는 기본 키가 이미 존재하고 있습니다 ]
※ 이미 id에 primary key가 부여되어 있기 때문에 에러 발생
제약조건은 데이터의 효율성과 무결성을 추구하기 위한 아주 중요한 개념이므로 꼭 알아두어야 합니다.
'Data Base_Oracle > SQL' 카테고리의 다른 글
SQL 제약조건 Check & Default (0) 2020.01.04 SQL 제약조건 Primary Key & Unique (0) 2020.01.04 SQL DDL_Drop, Rename (0) 2020.01.04 SQL DDL_Alter (0) 2020.01.04 SQL_DDL Create & 자료형 & 데이터 백업 (0) 2020.01.04