본문 바로가기
파이썬

파이썬 Python에서 문자열 대신 datetime으로 sqlite에서 datetime을 다시 읽는 방법은 무엇입니까?

by º기록 2021. 1. 9.
반응형

Python 2.6.4에서 sqlite3 모듈을 사용하여 SQLite 데이터베이스에 날짜 시간을 저장하고 있습니다. sqlite는 자동으로 날짜를 문자열로 변환하기 때문에 삽입이 매우 쉽습니다. 문제는 그것을 읽을 때 문자열로 돌아 오지만 원래 datetime 객체를 재구성해야한다는 것입니다. 어떻게해야합니까?

 

해결 방법

 

타임 스탬프 유형으로 열을 선언하면 클로버 상태입니다.

>>> db = sqlite3.connect(':memory:', detect_types=sqlite3.PARSE_DECLTYPES)
>>> c = db.cursor()
>>> c.execute('create table foo (bar integer, baz timestamp)')
<sqlite3.Cursor object at 0x40fc50>
>>> c.execute('insert into foo values(?, ?)', (23, datetime.datetime.now()))
<sqlite3.Cursor object at 0x40fc50>
>>> c.execute('select * from foo')
<sqlite3.Cursor object at 0x40fc50>
>>> c.fetchall()
[(23, datetime.datetime(2009, 12, 1, 19, 31, 1, 40113))]

보다? int (정수로 선언 된 열의 경우)와 datetime (열로 선언 된 타임 스탬프의 경우)은 모두 유형이 손상되지 않은 라운드 트립에서 유지됩니다.

 

참조 페이지 https://stackoverflow.com/questions/1829872

 

 

반응형

댓글