[SQL] 무결성 제약조건 / DDL / DML
[SQL] 무결성 제약조건 / DDL / DML
- 제약조건
- 데이터 무결성
- 데이터 무결성 제약조건
: NOT NULL - 해당 컬럼에 NULL을 포함되지 않도록 함
: UNIQUE - 테이블 내에서 해당 컬럼 값은 항상 유일무이한 값을 가질 것
: PRIMARY KEY - 해당 컬럼 값은 반드시 존재해야하고 유일해야 한다는 조건
: REFERENCES - 외래키는 부모의 기본키에 의존하거나 NULL값을 입력할 수 없음
: CHECK - 특정조건 항상 만족시키도록 함
- DDL (Data Definition Language)
- 테이블 생성 [ CREATE ]
CREATE TABLE TEST_MEMBER( ID VARCHAR2(50), PWD VARCHAR2(50), NAME VARCHAR2(50), AGE NUMBER, MARRY CHAR(1), REGDATE DATE ); |
- 테이블 삭제 [ DROP ]
DROP TABLE TEST_MEMBER; |
- 테이블 수정 [ ALTER ]
ALTER TABLE DEPARTMENT ADD (MGR_ID CHAR(3)); |
ALTER TABLE EMP5 MODIFY (ADDR1 DEFAULT '경기'); INSERT INTO EMP5 VALUES ('C10', '이승우', DEFAULT, '분당 효자촌'); SELECT * FROM EMP5; |
- DML ( Data Manipulation Language)
- 테이블 튜플 삽입 [ INSERT ]
INSERT INTO EMP5 VALUES ('A10', '임태희', DEFAULT, '청담동'); SELECT * FROM EMP5; |
- 테이블 튜플 수정 [ UPDATE ]
- 테이블 튜플 삭제 [ DELETE ]
- VIEW
- 자체적으로 데이터를 포함하지 않는다.
- 베이스 테이블 : 뷰를 통해 보여지는 데이터를 포함하고 있는 자세한 테이블
- 뷰를 생성할 때 사용하는 서브쿼리는 일반적인 SELECT 구문을 사용
- 생성된 뷰는 테이블처럼 취급됨
CREATE OR REPLACE VIEW V_EMP AS SELECT EMP_NAME, DEPT_ID FROM EMPLOYEE WHERE DEPT_ID = '90'; |
CREATE OR REPLACE VIEW V_EMP_DEPT_JOB AS SELECT EMP_NAME, DEPT_NAME, JOB_TITLE FROM EMPLOYEE LEFT JOIN DEPARTMENT USING (DEPT_ID) LEFT JOIN JOB USING (JOB_ID) WHERE JOB_TITLE='사원'; |