Я собираюсь вокруг и вокруг с хранением даты и времени в SQLite3 с целью получения записей с использованием сравнений позже, например. SELECT * WHERE date1 < date2
Я, наконец, отказался от попытки сохранить объекты datetime.datetime и решил использовать временную метку UNIX, поскольку они просто int и легко манипулировать, но я все еще получаю ошибки.
import sqlite3 as lite
import datetime
import time
conn = lite.connect('dispatcher.db')
cur = conn.cursor()
query = "create table if not exists new_test (curent_dt)"
cur.execute(query)
conn.commit()
now = datetime.datetime.now() - datetime.timedelta(minutes=60)
temp = int(time.mktime(now.timetuple()))
cur.execute('insert into new_test (curent_dt) values (? )', (temp))
conn.commit()
conn.close()
возвращает следующую ошибку:
cur.execute('insert into new_test (curent_dt) значения (?)', (temp)) ValueError: параметры неподдерживаемого типа
После изучения проблемы немного дальше я обнаружил, что вам нужно использовать конечную запятую для создания одного элемента кортежа, например. (temp,)