Computer Science/Database :: 데이터베이스

데이터베이스 4강 :: SQL, 데이터 정의 언어

HJPlumtree 2022. 3. 3. 23:05

데이터베이스 4강을 보며 배운내용

 

 

목표인 SQL 돌입!!

기본만 제대로 알고가자

SQL 3강에 걸쳐서 배운다

 

 

정리(TL;DR)

👇 SQL 데이터 정의 언어 👇
생성
CREATE TABLE 테이블이름(
  컬럼이름 데이터타임 특징,
  컬럼이름 데이터타임 특징
)

수정
ALTER TABLE 테이블이름
  ADD COLUMN 컬럼데이터타임 제약조건
  DROP COLUMN 컬럼이름
  CHANGE COLUMN 수정전컬럼 수정후컬럼
  MODIFY COLUMN 컬럼데이터타입​

삭제
DROP TABLE 테이블이름​

 

 

데이터베이스 언어는 어디서 사용될까?

데이터베이스 관리 시스템(DBMS)과 이야기 하려고

SQL이 가장 표준화된 언어

이거만 알면 다른 것 이해하기 편하다고 한다

 

 

SQL(Sturctured Query Language)

구조화된/질문/언어

관계대수에 기초해서 RDBMS 데이터 관리를 위해 설계된 언어

가장 표준화된 언어

 

특징

비절자척 언어, 필요한 데이터만 기술

인간의 언어와 유사, 간단, 명료

 

 

SQL 구성

데이터 정의 언어

  • 객체 생성 및 삭제, 구조 조작
  • 명령어: CREATE, ALTER, DROP 등

 

데이터 조작 언어(DML: Data Manipulation Language)

  • DDL에 정의된 테이블에 데이터 조작하는 명령어
  • 데이터에 대한 CRUD
  • 명령어: INSERT, UPDATE, DELETE, SELECT

 

 

CREATE, ALTER, DROP
INSERT, UPDATE, DELETE, SELECT
이 7가지 명령어만 알면 대부분 다 가능!

 

 

데이터 정의 언어

DDL: Data Definition Language

 

테이블, 인덱스, 뷰 ... 스키마 등에 대해

(TABLE, INDEX, VIEW ... SCHEMA)

  • CREATE 생성
  • ALTER 변경
  • DROP 삭제

 

 

스키마

스키마는 데이터베이스!!

스키마 = 데이터베이스

 

스키마 생성

CREATE SCHEMA 스키마이름

삭제

DROP SCHEMA 스키마 이름
일반적으로 데이터베이스 관리 시스템에서
수정하는 기능이 없어서 보통 삭제하고 다시 만든다고 한다
그래서 ALTER 스키마 잘 사용 안한다

 

 

테이블

생성

CREATE TABLE 테이블이름(
컬럼이름 데이터타입 특징,
컬럼이름 데이터타입 특징,
컬럼이름 데이터타입 특징,
)

CREATE TABLE 교수(
이름 CHAR(13) NOT NULL
)

 

수정

컬럼 수정/삭제시 데이터 소실에 ※주의※

ALTER TABLE 테이블이름
  ADD COLUMN 컬럼데이터타임 제약조건
  DROP COLUMN 컬럼이름
  CHANGE COLUMN 수정전컬럼 수정후컬럼
  MODIFY COLUMN 컬럼데이터타임

 

교수 테이블에 나이 컬럼을 넣어주는 예시

ALTER TABLE 교수
  ADD COLUMN 나이 INT

 

삭제

마찬가지로 삭제시 많은 ※주의※ 필요

DROP TABLE 테이블이름

 

교수 테이블 삭제 예시

DROP TABLE 교수

 

 

제약 조건

테이블과 테이블의 데이터를 모결하게 관리하기 위한 목적

 

종류

  • PRIMARY KEY
    기본키 지정
    UNIQUE와 NOT NULL 특성 다 가지고 있다
  • FOREIGN KEY
    외래키 지정
    참조 컬럼
  • NOT NULL
    NULL이 될 수 없는 컬럼
  • UNIQUE
    동일한 컬럼값 가질 수 없을 때
  • AUTO_INCREMENT
    레코드가 추가될 때 자동으로 속성값 1씩 증가
  • CHECK
    컬럼값에 조건 줄 수 있다

 

 

SQL by Sunder Muthukumaran #unsplash