CS/데이타베이스

[SQL] 데이터 정의어(DDL) 활용

코딩하는 포메라니안 2022. 3. 16. 16:53

[DDL 종류]

CREATE, ALTER, DROP, RENAME

 

 

1. 데이터베이스

1. 데이터베이스 생성

create database 데이터베이스명;

 

 

- 다국어 처리

create database test
default character set utf8mb3 collate utf8mb3_general_ci;

 

- 이모지 문자까지 처리

create database test
default character set utf8mb4 collate utf8mb4_general_ci

 

* character set = '코드' 저장 방식에 대한 규칙들의 집합

* collate = 저장된 값들을 '비교'할 때 사용하는 규칙들의 집합

 

 

2. 데이터베이스 변경

alter database 데이터베이스명
default character set utf8mb4 collate utf8mb4_general_ci;

 

 

3. 데이터베이스 삭제

drop database 데이터베이스명;

 

 

 

4. 데이터베이스 사용

use 데이터베이스명;

 

 

 

2. 테이블 생성

CREATE TABLE 수강
( 학번 INTEGER NOT NULL,
  과목코드 CHAR(5) NOT NULL,
  점수 INTEGER,
  성적 CHAR(2),
  PRIMARY KEY(학번, 과목코드),
  FOREIGN KEY(학번) REFERENCES 학생(학번)
  ON DELETE CASCADE 
  ON UPDATE CASCADE, 
  FOREIGN KEY(과목코드) REFERENCES 과목(과목코드)
  ON DELETE CASCADE 
  ON UPDATE CASCADE, 
  CHECK(성적 >= 0 AND 성적 <= 100));

 

* FOREIGN KEY : 참조 무결성을 위해 삭제나 변경시 취해야 할 동작을 명시

                               => CASCADE(연쇄적으로 다 삭제), SET NULL, SET DEFAULT, NO ACTION

* CHECK절 : 한 attribute가 가질 수 있는 값의 범위를 지정

 

'CS > 데이타베이스' 카테고리의 다른 글

[SQL] SubQuery 중첩질의문  (0) 2022.03.16
[SQL] 데이터 조작어(DML) 활용  (0) 2022.03.16
[실습] 트리거  (0) 2021.12.15
7. SQL  (0) 2021.12.15
[실습] Stored Procedure (저장 프로시저)  (0) 2021.11.11