1. employee 테이블의 구조를 복사하여 EMP_SAMPLE이란 이름의 테이블을 만들고, 사원 테이블의 사원번호 칼럼에 테이블 레벨로 primary key 제약 조건을 지정하되 제약 조건 이름은 my_emp_pk로 지정하기
DROP TABLE EMP_SAMPLE;
CREATE TABLE EMP_SAMPLE
AS
SELECT *
FROM EMPLOYEE
WHERE 1=0;
ALTER TABLE EMP_SAMPLE
ADD CONSTRAINT MY_EMP_PK PRIMARY KEY(ENO);
2. 부서 테이블의 부서번호 칼럼에 테이블 레벨로 PRIMARY KEY 제약조건을 지정하되 제약 조건 이름은 MY_DEPT_PK로 정하기
DROP TABLE DEPT_SAMPLE;
CREATE TABLE DEPT_SAMPLE
AS
SELECT * FROM DEPARTMENT
WHERE 1=0;
ALTER TABLE DEPT_SAMPLE
ADD CONSTRAINT MY_DEPT_PK PRIMARY KEY(DNO);
3. 사원 테이블의 부서번호 칼럼에 존재하지 않는 부서의 사원이 배정되지 않도록 외래 키 제약 조건을 지정하되 제약 조건의 이름은 MY_EMP_DEPT_FK로 정하기
ALTER TABLE EMP_SAMPLE
ADD CONSTRAINT MY_EMP_DEPT_FK
FOREIGN KEY(DNO) REFERENCES DEPARTMENT(DNO);
4. 사원 테이블의 커미션 칼럼에 0 보다 큰 값만 입력 할 수 있도록 제약조건 정하기
ALTER TABLE EMP_SAMPLE
ADD CONSTRAINT EMP_COMMISSION_MIN CHECK (COMMISSION > 0);
출처 : ORACLE 11G PROGRAMMING
'SQL' 카테고리의 다른 글
Hackers Rank : SQL Oracle : Type of Triangle solution (0) | 2022.06.02 |
---|---|
오라클 서브 쿼리 연습 Oracle Subquery practice (0) | 2022.06.01 |
테이블 조인 연습하기 OracleTable Join practice (0) | 2022.06.01 |
Hackers Rank : SQL Oracle : Weather Observation Station 5 solution (0) | 2022.06.01 |
Oracle 관리자 계정 SYSTEM 비밀번호 변경 및 비밀번호 락타임 에러 해결 (oracle system/sys account password change & password locktime error) (0) | 2022.05.23 |