본문 바로가기
[자격증] SQLD(SQL개발자)/↘ SQL 기본 및 활용

[ SQLD ] SQL 기본 - 2. DDL (Data Definition Language) (데이터 정의어)

by 승큐리티 2020. 5. 22.


[ SQLD ] 

1. SQL 기본

 1-2. DDL (데이터 정의어)



1. DDL (Data Definition Language) (데이터 정의어) - 테이블 구조정의 명령어
CREATE : 테이블 생성
ALTER : 테이블 변경
DROP : 테이블 삭제
RENAME : 테이블 이름 변경


2. CREATE : 테이블 생성
테이블 이름 네이밍 시 규칙
- 영문 시작
- “_” 언더바 사용하여 단어 잇기
- 숫자 가능

CREATE TABLE 테이블이름
(

숫자 number(6) primary key
문자 char(10) not null

number = 숫자
char = 문자
varchar = 가변문자
primary key = 기본 키
not null = null값 허용 X

외래키
Contraint 외래키이름
FOREGIN KEY ( 참조 할 내 컬럼명 )
REFERENCES 참조테이블 ( 참조 할 테이블 칼럼명 )

);

 

 


2-1) CASCADE 옵션
참조관계가 있을 시 참조 되는 데이터를 자동으로 반영

명령어 : ON DELETE CASCADE
해설 : 자신이 참조하고 있는 데이터가 삭제되면 자신의 테이블에서도 데이터를 삭제한다.


3. ALTER : 테이블 변경 ( 칼럼 추가,변경,삭제 )
   RENAME : 테이블 이름 변경

테이블 이름 변경 명령어
ALTER TABLE 테이블이름 RENAME TO 변경테이블이름;

테이블 칼럼 추가
ALTER TABLE 테이블이름 ADD ( 컬럼이름 데이터타입 DEFAULT 기본값);
ALTER TABLE 테이블이름 ADD ( 컬럼이름 데이터타입 NOT NULL);

테이블 칼럼 변경
ALTER TABLE 테이블이름 MODIFY ( 컬럼이름 데이터타입 DEFAULT 기본값);
ALTER TABLE 테이블이름 MODIFY (컬럼이름 데이터타입 NOT NULL);

테이블 칼럼 삭제
ALTER TABLE 테이블이름 DROP COLUMN 칼럼명;

테이블 칼럼명 변경
ALTER TABLE 테이블이름 RENAME COLUMN 칼럼명 TO 변경칼럼명;

테이블 기본키 추가
ALTER TABLE 테이블이름 ADD CONSTRAINT 기본키이름 PRIMARY KEY (기본키);

테이블 외래키 추가
ALTER TABLE 테이블이름 ADD CONSTRAINT 외래키이름
FOREIGN KEY (참조 할 칼럼명) REFERENCES 참조테이블명 (참조 할 칼럼명);

 

 

DESC 학생;
-> 학생 테이블이 검색된다. (테이블명 바꾸기 전)
DESC Uni학생;
-> 테이블명을 바꾸니 Uni학생이 검색된다. (테이블명 바꾼 후)
DESC 학생;
-> 테이블명을 바꿔서 학생테이블은 검색이 안된다.


4. DROP : 테이블 삭제
   TRUNCATE : 테이블 안 데이터 삭제 ( 용량도 초기화 되지만 테이블은 존재 )
-> 빠른 삭제를 위해 로그를 기록하지 않고 외래키 무결성을 확인안한다.
자동으로 COMMIT 되고 ROLLBACK을 사용 할 수 없다

DROP TABLE 테이블이름;
TRUNCATE TABLE 테이블이름;

 

 

Uni학생 테이블을 삭제한 후 검색을 해보니 검색 되지 않는다.


 

댓글