Ich habe es gemacht, weil ich es wollte, als ich JSON mit sqlite3 las. Machen Sie sich eine Notiz, um nicht zu vergessen
Verwenden Sie sqlite3.register_adapter
, um Python-Typen in SQLite zu verwenden.
Umgekehrt verwenden Sie zum Konvertieren von SQlite nach Python sqlite3.register_conveter
.
import sqlite3
#Benutzerdefinierter Typ 1
List = list
sqlite3.register_adapter(List, lambda l: ';'.join([str(i) for i in l]))
sqlite3.register_converter('IntList', lambda s: [str(i) for i in s.split(bytes(b';'))])
#Benutzerdefinierter Typ Teil 2
Bool = bool
sqlite3.register_adapter(Bool, lambda b: str(b))
sqlite3.register_converter('Bool', lambda l: bool(eval(l)))
(Py2-Version) https://qiita.com/maueki/items/4aae7b2d9a34758ef465 (Offizielle Dokumente) https://docs.python.org/ja/3/library/sqlite3.html#using-adapters-to-store-additional-python-types-in-sqlite-databases
Recommended Posts