ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • DDL _ CREATE / DROP / ALTER
    SQL/sql 문법(mysql, mariaDB) 2024. 4. 27. 08:30

    ▤ 목차

      create

       create 명령어는 데이터베이스와 테이블을 만들 수 있다.

      ⌨ 형식

      1. 데이터 베이스 만들기

      CREATE DATABASE 데이터베이스이름

      2. 테이블 만들기

      CREATE TABLE 테이블명(
      칼럼명	자료형 기타조건들
      );

      💻 코드로 보기

      1. 데이터 베이스 만들기

      CREATE DATABASE School;

      2. 테이블 만들기

      CREATE TABLE student(
      bun 	INT 			primary KEY,
      irum 	VARCHAR(10) 	NOT NULL
      );

       

      프롬프트 사용 시

      데이터 베이스 생성

      MariaDB [(none)]> show databases;

       

       
      create database demo;

       

       
      show databases;

       

       


      drop

      존재하는 테이블 전체를 삭제하는 명령어이다.

      ⌨ 형식

      drop table 테이블명;

      💻 코드로 보기

      drop table student;

       

      프롬프트 사용 시

      데이터베이스 삭제

      drop database demo;


      ALTER

      ALTER 문은 데이터베이스의 전체적인 특성을 수정할 수 있게 해 준다.
      테이블에 필드를 추가, 삭제하거나 필드의 타입을 변경할 수 있게 해 준다/

      ⌨ 형식

      ALTER DATABASE 데이터베이스이름 CHARACTER SET=문자집합이름
      ALTER DATABASE 데이터베이스이름 COLLATE=콜레이션이름
      더보기

      콜레이션(collation)은 데이터베이스에서 검색이나 정렬 작업을 할 때 사용하는 집합을 의미한다.

      비교를 위한 규칙이다.

       

      💻 코드로 보기

      ALTER TABLE aa ALTER COLUMN juso SET DEFAULT '역삼동';

       
       
       
       

      ALTER TABLE과 ADD문

      ⌨ 형식

      ALTER TABLE 테이블이름 ADD 필드이름 필드타입

       

      💻 코드로 보기

      ALTER TABLE aa ADD phoneNum int;
      
      ALTER TABLE kbs ADD(job_id INT DEFAULT 100); 
      -- 칼럼 추가
      -- 이전 자료에 모두 default값으로 채워진다.

       

      👏 중요

      한글을 넣는데 깨진다면 charset=utf8을 설정할 수 있다.

      CREATE TABLE aa(bun INT, irum CHAR(10), juso VARCHAR(50))CHARSET=UTF8;
      -- CHARSET=utf8 : 한글이 깨지는 경우

       
       
       
       

      ALTER TABLE과 DROP문

      테이블 전체를 drop 하는 것이 아니라 테이블 필드만 삭제할 수 있다.

      ⌨ 형식

      ALTER TABLE 테이블이름 DROP 필드이름

      위와 같은 형식을 따르면 필드는 사라지지만
      show 테이블명; 하면 확인할 수 있다.

      💻 코드로 보기

      ALTER TABLE test DROP jjang int;
      ALTER TABLE kbs DROP COLUMN job_num;

       
       
       
       

      Alter와 MODIFY COLUMN

      Modify column 문과 함께 사용하면 테이블의 필드 타입을 변경할 수 있다.

      ⌨ 형식

      ALTER TABLE 테이블이름 MODIFY COLUMN 필드이름 필드타입

       
      SQL은 데이터와 직접적인 연관이 있어서 적재적소하게 사용하는 게 포인트이다.
      구문을 많이 아는 것보다 적절하게 알고 사용할 줄 아는 게 실력이라는 생각이 든다.
       

      💻 코드로 보기

      ALTER TABLE test DROP jjang int;
      
      -- 칼럼의 구조(type)를 변경하고 있다
      ALTER TABLE kbs MODIFY job_num VARCHAR(5);

       
       
       
       

      Alter와 RENAME

      RENAME 문과 함께 사용하면 테이블의 필드 타입을 변경할 수 있다.

      ⌨ 형식

      ALTER TABLE 테이블이름 RENAME 변경할 이름;

       
       
       
       

      Alter와 CHANGE

      RENAME 문과 함께 사용하면 테이블의 필드 타입을 변경할 수 있다.

      ⌨ 형식

      ALTER TABLE kbs CHANGE job_id job_num INT;

      😊정리

      SQL은 데이터와 직접적인 연관이 있어서 적재적소하게 사용하는 게 포인트이다.
      DB서버를 한번에 다녀오는게 좋은 것도 있으니,
      구문을 많이 아는 것보다 적절하게 알고 사용할 줄 아는 게 실력이라는 생각이 든다.
       
      저번에 정리한 DDL은 사실 개발자 입장에서 많이 사용하지 않는다.
      특히 DROP 명령어는 더더욱 사용하지 않는다. (DROP은 테이블 자체 제거!!)

    Designed by Tistory.