SQL강의내용정리2 CREATE

in sql •  6 years ago  (edited)

수업한지 한참 지났는데 이제야 들여보네요~
기억이 가물가물~
복습하는 의미에서 정리 합니다.

Let's Go~~~

SQL(Structured Query Language) 구조화된 쿼리 언어
==> 관계형 데이타 베이스를 위한 언어(표준 질의어)
● 데이터 정의어 (DDL : Data Definition Language ) - 테이블을 생성 / 변경 / 제거하는 기능 제공
● 데이터 조작어 (DML : Data Manipulation Language) - 테이블에 데이터를 삽입 / 검색 / 수정 / 삭제하는 기능 제공
● 데이터 제어어 (DCL : Data Control Language) - 데이터에 대해 접근하여 사용할 수 있는 권한을 부여 / 취소하는 기능 제공

데이터 정의어 (DDL)

자주사용하는 속성의 데이타 타입

CREATE TABLE (테이블 생성)--------------------------------------------------------------------------------
CREATE TABLE 테이블명(
속성명 데이터타입 [NOT NULL][DEFAULT 기본값]
[PRIMARY KEY (속성 리스트)]
[UNIQUE (속성 리스트)]
[CONSTRAINT 제약조건명]
[FOREIGN KEY (속성 리스트) REFERENCES 테이블명 (속성 리스트)]
[ON DELETE 옵션] [ON UPDATE 옵션]
);

** [ ]생략가능한 문장 , ";" 문장의 끝, 대소문자 구분하지 않음
- PRIMARY KEY : 기본키 지정 ==> ex) PRIMARY KEY (고객 아이디)
- UNIQUE : 대체키 지정 ==> ex) UNIQUE (고객이름, 주소)
- FOREIGN KEY : 외래키 지정 (CONSTRAINT 제약조건명 지정 가능)
REFERENCES : 참조하는 테이블과 속성을 지정 ==> ex) FOREIGN KEY (소속부서) REFERENCES 부서 (부서번호)
ON DELETE : 참조하는 속성 (기본키) 삭제 시 처리될 방법 => 기본키 삭제 시 NULL값 입력, 수정 시 같이 수정
ON UPDATE : 참조하는 속성 (기본키) 수정 시 처리될 방법 => 기본키 삭제 시 기본값 입력, 수정 시 아무 작업하지 않음

<< TABLE 생성 연습문재 >>

CREATE TABLE MEMBER (
NUM INT,
NAME VARCHAR(10),
AGE INT,
EMAIL VARCHAR(50),
PHONE VARCHAR(20),
PRIMARY KEY(NUM)
);

CREATE TABLE EMP (
EMPNO INT,
ENAME VARCHAR(10),
JOB VARCHAR(9),
MGR INT,
HIREDATE DATETIME,
SAL INT,
COMM INT,
DEPTNO TINYINT,
PRIMARY KEY(EMPNO),
CONSTRAINT FK_EMP_DEPT
FOREIGN KEY(DEPTNO) REFERENCES DEPT(DEPTNO)
ON DELETE CASCADE
);

CREATE TABLE DEPT (
DEPTNO TINYINT PRIMARY KEY,
DNAME VARCHAR(14),
LOC VARCHAR(13)
);

ALTER TABLE (테이블 변경)-----------------------------------------------------------------
ALTER TABLE 테이블명
ADD 속성명 데이터타입 [NOT NULL] [DEFAULT 기본값];
[CONSTRAINT 제약조건명]
FOREIGN KEY(속성명) REFERENCES 참조테이블명(참조속성명)

DROP TABLE (테이블제거)---------------------------------------------------------------------------------
DROP TABLE 테이블명;

테이블 변경과 제거는 아직 배우지 않아서....
이번 장은 여기서 끝~

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

@pooh1973, I gave you an upvote on your post! Please give me a follow and I will give you a follow in return and possible future votes!

Thank you in advance!

잘 보고 갑니다.