[python]SQLite 날자 시간을 기본값으로 넣기

2020년 11월 18일 by 진아사랑해

    [python]SQLite 날자 시간을 기본값으로 넣기 목차
반응형

테이블에 날자 필드를 생성하여 나중에 오래된 레코드를 정리하기로 하였다

초기 데이터를 저장할 때 시간도 기본 값으로 저장되어야 하고

운용중에 저장되는 경우에도 날자에 대한 입력이 없어도 자동으로 저장될 필요가 생겼다

 

테이블을 생성하는 경우에 

 

    sql_create_initial_thunder_table = """ CREATE TABLE IF NOT EXISTS initial_thunder (

                                    id integer PRIMARY KEY AUTOINCREMENT,

                                    name text NOT NULL,

                                    score INTEGER,

                                    data_time text DEFAULT (datetime('now','localtime'))  <- 디폴트로 날자와 시간이 입력된다

                                ); """

 

    try:

        with sqlite3.connect("thunder.db"as conn:

            c = conn.cursor()

            c.execute(sql_create_initial_thunder_table)

    except Error as e:

        print(e)

    finally:

        conn.close()

 

DEFAULT (datetime('now','localtime'))의 의미는

data('now')로 하면 영국 그리니치 천문대를 기준으로 날자와 일자가 나온다

datetime('now','localtime') 로 하면 각 지역별로 날자와 시간이 변경되어 나온다

즉, 우리나라 날자와 시간을 얻으려면 datetime('now','localtime')를 사용하여야 한다.

 

참고) 

data_time text DEFAULT (datetime('now','localtime'))  <- 디폴트로 날자와 시간이 입력된다

를 아래처럼 입력해도 된다

data_time DEFAULT (datetime('now','localtime'))

나는 명학하게 하기 위해 text를 추가하였다

 

반응형