logo
Search검색어를 포함하는 게시물들이 최신순으로 표시됩니다.
    Table of Contents
    [SQL] ALTER : 테이블과 컬럼의 갱신/삭제

    이미지 보기

    [SQL] ALTER : 테이블과 컬럼의 갱신/삭제

    • 22.03.14 작성

    • 읽는 데 2

    TOC

    ALTER TABLE

    table 이름 변경

    ALTER TABLE [table_name] RENAME TO [new_table_name];
    

    table에 새로운 column 추가

    문법

    ALTER TABLE [table_name] ADD COLUMN [new_column_name] [data type] [option]
    

    실수에 주의하라

    ALTER TABLE news ADD COLUMN created_at TEXT NOT NULL;
    
    • NOT NULL 옵션을 가지는 column을 추가하고 싶다.
    • 하지만 오류 발생

    why?

    • 기존에 있던 기존 레코드들에 새로 추가하는 필드에 대한 정보가 없기 때문!!

    • 해결법 1 : NOT NULL 옵션 없이 추가(기존 레코드는 이 필드에서 빈 값)

    • 해결법 2 : 기본값(DEFAULT) 설정(기존 레코드가 DEFAULT로 채워짐)

    ALTER TABLE [table_name] 
    ADD COLUMN [new_col_name] [data type] [option] NOT NULL DEFAULT [deault_val];
    

    사용 예시

    ALTER TABLE news ADD COLUMN subtitle TEXT NOT NULL DEFAULT '소제목';
    

    column 이름 수정(SQLite ver.3.25 이후)

    문법

    ALTER TABLE [table_name] RENAME COLUMN [current_col_name] TO [new_col_name];
    

    사용 예시

    ALTER TABLE news RENAME COLUMN title TO main_title;
    

    ⭐ column명은 따옴표 없이 작성함에 유의한다.


    column 삭제(가장 최신)

    문법

    ALTER TABLE [table_name] DROP COLUMN [col_name]
    

    사용 예시

    ALTER TABLE news DROP COLUMN subtitle;
    
    profile

    FE Developer 박승훈

    노력하는 자는 즐기는 자를 이길 수 없다