오라클 데이터베이스 제약조건 수업내용
CONSTRAINT -> 제약 조건을 만들때 사용하는 예약어
dept2_deptno_pk -> 제약 조건의 이름
PRIMAYRY KEY -> 부여할 제약조건의 종류
세번째줄 CHECK 제약조건은 true(참일때만 loc가 저장된다 즉 참일대만 row가 만들어진다.
정해진 카테고리 나 정해진 조건 및 값만 들어갈수 있도록 해주는 예약어 이다.
이런 식으로 테이블에 row를 추가할수 있다.
dept2라는 테이블에 걸려있는 제약조건을 확인해보자
SELECT CONSTRAINT_NAME, CONSTRAINT_TYPE
FROM USER_CONSTRAINTS
WHERE TABLE_NAME='DEPT2';
의경로로 들어가 DEPT2테이블에 있는 제약조건을 확인하였다.
칼럼을 정의할때 칼럼 옆에 정의 하는 제약조건을 작성해 준다.(column level제약 조건)
이렇게 테이블 사이의 관계를 생성할수 있다.
dept2테이블의 20번 부서번호가 없으면 연결되어있는 emp2에서 20번 부서번호는 입력이 불가하다 그래서 위 사진과 같이 먼저 dept2 테이블에서 부서번호 20을 생성해준 후에 emp2에서 20번이라는 부서 번호를 입력 가능하다.
NOT NULL은 column수준의 제약조건만 가능하다.
위 처럼 NOT NULL을 제외한 PRIMARY KEY나 FOREIGN KEY는 테이블레벨에서도 작성이 가능하다.
또 나중에 테이블을 먼저 만들어 놓고 제약조건을 테이블에 적용할 수 있다.
만들어진 테이블에 제약조건은 명령어를 통해 직접 적용이 가능하다.
무언가를 만들때에는 CREATE TALBLE, USER, SEQUENCE
무언가를 삭제할 때에는DROP TABLE, USER, SEQUENCE
를 사용하는데 이 때
무언가를 변경할 때에는 ALTER 라는 명령어를 사용 할 수 있는데 제약조건 명령어를 사용할 때에는 이 ALTER를 사용하면된다.
위 처럼 제약조건이 없는 테이블을 먼저 만들어 둔다.
그 다음
이런식으로 PRIMARY KEY와 FOREIGN KEY도 추가가 가능하다.
NOT NULL을 추가할때에는 위와 다르게 MODIFY를 거쳐 column수준의 명령어를 통해 NOT NULL제약 조건을 추가가 가능하다.
이렇게 추가된 제약조건들을 비활성화 시킬수도 있는데
이런식으로 비활성화 시키면 된다.
이렇게 다시 ENABLE명령어를 통해 다시 활성화 시킬수도 있으며,
DROP명령어를 통해 제약조건도 삭제 가능하다!
'수업내용' 카테고리의 다른 글
20230234 수업내용 (0) | 2023.04.24 |
---|---|
2030421수업내용2 (0) | 2023.04.21 |
감기 조심하세요.. (0) | 2023.04.21 |
나는 유리멘탈이였다.. (1) | 2023.04.18 |
2023년도 4월 5일 에이콘아카데미 국비교육 시작 (0) | 2023.04.17 |
댓글