SQL에서는 DDL과 DML을 사용하여 생성되고 관리된다.

****

DDL (Data Definition Language) : 데이터베이스 구조를 정의하고 관리

CREATE : 테이블/뷰/인덱스 생성ALTER : 테이블/뷰/인덱스 구조 변경DROP : 테이블/뷰/인덱스 삭제

언어정리!

테이블 - 실제로 컬럼이 저장되어있는 곳

뷰 - 가상의 테이블을 쿼리하여 보여주는 것.

인덱스 - 데이터베이스에서 원하는 데이터를 빠르게 만들기 위한 색인.

CREATE

  • 구문 :
    • CREATE TABLE “만들고자하는 테이블 명” ’만들고자 하는 컬럼 명’ 컬럼타입 NULL값 여부
  • 보통은 아래처럼 테이블을 만듦
  • -CREATE 테이블 생성 예시
    CREATE TABLE IF NOT EXISTS ‘products’ -- 프로덕트라는 테이블이 없다면, 테이블 생성. 중복생성 방지
    (’product_id’ int unsigned NOT NULL -- 컬럼명 : 프로덕트 아이디. 컬럼타입 : 정수( unsigned = 음수 금지), Null값 여부 : x
    ‘name’ varchar(50) NOT NULL
    PRIMARY KEY (’product_id’))
    DEFAULT CHARSET = utf8;
  • 컬럼 타입
    • int unsigned
      • 정수, 음수금지
      • int unsigned 을 해줌으로써 음수를 반환할 수 있는 공간을 없애 더 효율적으로 사용 가능.
    • char(), varchar()
      • 컬럼 타입을 문자열로 할때 사용
      • char()
        • char(6) 으로 했을 때 6글자까지 사용 가능.
        • 2글자를 적든 1글자를 적든 6bytes의 공간을 확보함.
        • 고정된 문자열을 가진 경우 사용하면 유리 (예) 상품코드
      • varchar
        • varchar(6) 으로 했을때 6글자까지 사용 가능.
        • 2글자를 적으면 3bytes, 3글자를 적으면 4bytes. 즉 글자수+1의 공간을 확보함.
        • 고정 되지 않은 문자열을 가진 경우 사용하면 유리 (예) 상품설명
      • Char, Varchar 출력 예시표.

  • PRIMARY KEY
    • 테이블내에 모든 행에 적용되는 고유 값.
    • 주민등록번호느낌.
  • DEFAULT CHARSET
    • 문자열을 어떤 코드로 사용할지 적용.

ALTER

컬럼을 추가,삭제, 타입변경, 이름변경 등을 할 수 있.

예제1)프로덕트 테이블에서 가격 컬럼을 삭제하겠다.

ALTER TABLE products DROP column price;

예제2) 프로덕트 테이블에서 가격 컬럼(컬럼값 INT, NULL값 허용)을 추가하겠다.

ALTER TABLE products ADD price int NULL;

DML (Data Manipulation Language) : 데이터를 쿼리하거나 조작

SELECT : 질의INSERT : 삽입UPDATE : 수정DELETE : 삭제
1. DROP과는 다르게 테이블 전체를 삭제하는 것이 아닌 테이블내의 특정 값을 삭제.

0개의 댓글