Map BIGINT to INTEGER for SQLite

Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
This commit is contained in:
Frédéric Mangano-Tarumi 2020-03-21 19:13:45 +01:00 committed by Lukas Fleischer
parent 28ba3f77dc
commit 31a5b40b5c

View file

@ -17,6 +17,17 @@ def compile_tinyint_sqlite(type_, compiler, **kw):
return 'INTEGER'
@compiles(BIGINT, 'sqlite')
def compile_bigint_sqlite(type_, compiler, **kw):
"""
For SQLite's AUTOINCREMENT to work on BIGINT columns, we need to map BIGINT
to INTEGER. Aside from that, BIGINT is the same as INTEGER for SQLite.
See https://docs.sqlalchemy.org/en/13/dialects/sqlite.html#allowing-autoincrement-behavior-sqlalchemy-types-other-than-integer-integer
"""
return 'INTEGER'
metadata = MetaData()
# Define the Account Types for the AUR.