학습 기록/DataBase

23.05.10 / DataBase / DML

SooHw 2023. 5. 10. 12:40

CREATE : 새로운 객체 생성

 

CREATE TABLE 테이블 생성

               USER 계정

               SEQUENCE 시퀀스

               VIEW 뷰

 

* 테이블 생성 규칙

- 대소문자 구분X

- 테이블명 중복X

- 같은 테이블 내 컬럼명 중복X

- 문자로 시작해야함, 예약어 사용 불가

 

TABLE

CREATE TABLE 테이블명 ( 컬럼명 자료형(크기) 기본값 NULL여부  --기본값, NULL여부는 없을 시 안적음

CREATE TABLE 부서(
    부서ID NUMBER(4) NOT NULL,
    부서이름 VARCHAR2(30) NOT NULL,
    매니저ID NUMBER(6),
    지역ID NUMBER(4)
);

 

 

 

제약조건

* PK

식별자를 물리적 모델링한것

NOT NULL + UNIQUE = NULL 불가, 중복 불가

 

* UNIQUE KEY

PK와 다르게 NULL값 입력 가능 단, 중복 불가

 

* NOT NULL

NULL 값 불가능

 

* CHECK

지정한 데이터만 입력 가능

 

* FOREING KEY

외래키, 테이블끼리 연결되어 있는 관계를 물리적 모델링

다른 테이블의 기본키(OR UNIQUE KEY) 를 참조하는 속성의 집합

*FK 사용하면 데이터 무결성

 

* 무결성

데이터에 결함이 없는 상태

데이터가 정확하고 유효하게 유지 된 상태

 

* 무결성 제약조건

데이터베이스에 저장된 데이터의 무결성을 보장, 일관되게 유지하기 위함

 

개체 무결성 제약조건 기본키를 구성하는 속성은 NULL을 가질수 없음

참조 무결성 제약조건  외래키는 참조할 수 없는 값을 지닐 수 없음

 

PK, UK, CHECK, FK 문법

* PK 문법

 

 

* UK 문법

 

 

* CHECK 문법

 

 

* FK문법

 

 

FK를 사용하려면 참조하려는 컬럼이 UK이거나 PK여야함

 

* NOT NULL 변경

 

 

 

* 제약조건 삭제

 

 

 

 

ALTER

테이블 수정

ALTER TABLE ADD                  - 테이블에 컬럼 추가

                        DROP 컬럼       - 테이블의 컬럼 삭제

                        MODIFY            - 테이블의 컬럼 속성 변경

                        RENAME          - 테이블의 컬럼 이름 변경

 

 

* DROP

삭제할떄

DROP TABLE 테이블 삭제

DROP CONSTRAINT 제약조건 삭제

TURNCATE TABLE 테이블 데이터 영구삭제

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

* FK에 의해 참조 되고 있는 테이블은 삭제 불가능

->DROP TABLE 테이블명 CASCADE CONSTRAINT

참조하고 있는 값 까지 삭제

 

 

   

 

 

'학습 기록 > DataBase' 카테고리의 다른 글

23.05.16 / DataBase / TCL, DCL  (0) 2023.05.29
23.05.15 / DataBase / DML  (0) 2023.05.15
23.05.09 / DataBase / ORDER BY, JOIN  (0) 2023.05.09
23.05.08 / DataBase / GROUP BY, HAVING  (0) 2023.05.08
23.05.04 / DataBase / 함수  (0) 2023.05.07