maestral.database.types
SQL column type definitions, including conversion rules from / to Python types.
Module Contents
- class maestral.database.types.SqlString[source]
Bases:
SqlType
Class to represent Python strings in SQLite table
- class maestral.database.types.SqlInt[source]
Bases:
SqlType
Class to represent Python integers in SQLite table
SQLite supports up to 64-bit signed integers (-2**63 < int < 2**63 - 1)
- class maestral.database.types.SqlFloat[source]
Bases:
SqlType
Class to represent Python floats in SQLite table
- class maestral.database.types.SqlLargeInt[source]
Bases:
SqlType
Class to represent large integers > 64bit in SQLite table
Integers are stored as text in the database and converted on read / write.
- class maestral.database.types.SqlPath[source]
Bases:
SqlType
Class to represent Python paths in SQLite table
Paths are stored as bytes in the database to handle characters in the path which cannot be decoded in the reported file system encoding. On the Python side, paths will contain surrogate escapes in place of such characters.
- class maestral.database.types.SqlEnum(enum)[source]
Bases:
SqlType
Class to represent Python enums in SQLite table
Enums are stored as text (attribute name) in the database.
- Parameters
enum (Iterable[enum.Enum]) –