Type Converters
Output and input type converters for transforming database values. Used by
drivers to convert between Python types and database-native representations.
Base Classes
Subclass BaseInputConverter to add adapter-specific input conversion.
Implementations receive the driver dialect and register conversions for database
types that are not covered by the built-in converter functions below.
-
class sqlspec.core.type_converter.BaseInputConverter[source]
Bases: object
Base class for converting Python params to database format.
-
convert_params(params)[source]
Convert parameters for database execution.
- Parameters:
params (dict[str, typing.Any] | None) -- Dictionary of parameters to convert.
- Return type:
dict[str, typing.Any] | None
- Returns:
Converted parameters dictionary, or None if input was None.
Built-in Converters
-
sqlspec.core.type_converter.convert_decimal(value)[source]
Convert string to Decimal for precise arithmetic.
- Parameters:
value (str) -- Decimal string.
- Return type:
Decimal
- Returns:
Decimal object.
-
sqlspec.core.type_converter.convert_iso_date(value)[source]
Convert ISO date string to date object.
- Parameters:
value (str) -- ISO date string.
- Return type:
date
- Returns:
date object.
-
sqlspec.core.type_converter.convert_iso_datetime(value)[source]
Convert ISO 8601 datetime string to datetime object.
- Parameters:
value (str) -- ISO datetime string.
- Return type:
datetime
- Returns:
datetime object.
-
sqlspec.core.type_converter.convert_iso_time(value)[source]
Convert ISO time string to time object.
- Parameters:
value (str) -- ISO time string.
- Return type:
time
- Returns:
time object.
-
sqlspec.core.type_converter.convert_json(value)[source]
Convert JSON string to Python object.
- Parameters:
value (str) -- JSON string.
- Return type:
typing.Any
- Returns:
Decoded Python object.
-
sqlspec.core.type_converter.convert_uuid(value)[source]
Convert UUID string to UUID object.
- Parameters:
value (str) -- UUID string.
- Return type:
UUID
- Returns:
UUID object.
-
sqlspec.core.type_converter.format_datetime_rfc3339(dt)[source]
Format datetime as RFC 3339 compliant string.
- Parameters:
dt (datetime) -- datetime object.
- Return type:
str
- Returns:
RFC 3339 formatted datetime string.
-
sqlspec.core.type_converter.parse_datetime_rfc3339(dt_str)[source]
Parse RFC 3339 datetime string.
- Parameters:
dt_str (str) -- RFC 3339 datetime string.
- Return type:
datetime
- Returns:
datetime object.