ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • SQLite 12. CREATE TABLE, ALTER, DROP
    SQL/Sqlite 2022. 1. 1. 19:22
    반응형

    DB Browser에서 테이블 작성

    데이터베이스 구조에서 테이블 생성 선택

    타입이 5가지 밖에 없다. 

    NN: NOT NULL. 비울 수(=null) 없다.

    PK: Primary Key. 기본 키.

    AI: Auto Increment, 자동 증가.
    기본 키 컬럼이 INTEGER형이 이어야 하고,
    INSERT할 때마다 기본 키가 1씩 커지면서 자동으로 입력된다. 
    자동 증가를 선택하면 마지막 값을 기억하기 위한 테이블이 하나 생성된다. 

    U: UNIQUE. 고유한 값.

     

    기본값

    주로 날짜 시간을 많이 사용한다. 

    CREATE TABLE "test" (
    	"recorded_at_1"	TEXT DEFAULT CURRENT_TIMESTAMP,
    	"recorded_at_2"	TEXT DEFAULT (datetime('now','localtime'))
    )

    테이블 정의 변경창을 이용해 기본값 입력시
    (datetime('now','localtime')) 앞에 =을 붙이지 않으면 
    자동으로 작은 따옴표가 기본값을 감싸서 문자열을 만든다. 

    SQL창에서 직접 입력하는 것도 좋은 방법이다. 

    CURRENT_TIMESTAMP, (datetime('now')) 는 UTC 시간이며
    로컬 타임을 원한다면 (datetime('now','localtime'))을 이용해야 한다. 

     

    CREATE TABLE IF NOT EXISTS

    CREATE TABLE IF NOT EXISTS table_name (
    	id INTEGER,
    	name TEXT,
    )

    임베디드(다른 프로그램의 일부)로 사용되는 SQLite의 특성상
    프로그램 실행시 테이블이 없으면 만들어 줘야 하는 일이 많다. 

     

    ALTER TABLE

    ALTER TABLE test
    ADD id INTEGER

    '+' 새 레코드 추가 버튼을 눌러 데이터를 삽입해 보았다. 

     

    ALTER TABLE 테이블명 RENAME TO 새_테이블명

    테이블 명 변경

     

    DROP COLUMN

    ALTER TABLE test
    DROP COLUMN id

    COLUMN은 생략할 수 있다. 

    ALTER TABLE test 
    DROP id

     

    DROP TABLE 

    DROP TABLE test

    반응형
Designed by Tistory.