class Boolean(Emulated, TypeEngine, SchemaType):
Known subclasses: sqlalchemy.dialects.mssql.BIT
, sqlalchemy.sql.sqltypes.MatchType
, sqlalchemy.types.BOOLEAN
, sqlalchemy.databases.oracle._OracleBoolean
, sqlalchemy.dialects.postgresql.asyncpg.AsyncpgBoolean
, sqlalchemy.dialects.postgresql.pg8000._PGBoolean
A bool datatype.
.Boolean
typically uses BOOLEAN or SMALLINT on the DDL side,
and on the Python side deals in True or False.
The .Boolean
datatype currently has two levels of assertion
that the values persisted are simple true/false values. For all
backends, only the Python values None, True, False, 1
or 0 are accepted as parameter values. For those backends that
don't support a "native boolean" datatype, an option exists to
also create a CHECK constraint on the target column
.Boolean
datatype now asserts that
incoming Python values are already in pure boolean form.Method | __init__ |
Construct a Boolean. |
Method | bind_processor |
Return a conversion function for processing bind values. |
Method | literal_processor |
Return a conversion function for processing literal values that are to be rendered directly without using binds. |
Method | result_processor |
Return a conversion function for processing result row values. |
Method | _set_table |
Undocumented |
Method | _should_create_constraint |
Undocumented |
Method | _strict_as_bool |
Undocumented |
Class Variable | __visit_name__ |
Undocumented |
Class Variable | _strict_bools |
Undocumented |
Class Variable | native |
Undocumented |
Instance Variable | _create_events |
Undocumented |
Instance Variable | create_constraint |
Undocumented |
Instance Variable | name |
Undocumented |
Property | python_type |
Return the Python type object expected to be returned by instances of this type, if known. |
Inherited from Emulated
:
Method | adapt |
Undocumented |
Method | adapt_to_emulated |
Given an impl class, adapt this type to the impl assuming "emulated". |
Inherited from TypeEngine
:
Class | Comparator |
Base class for custom comparison operations defined at the type level. See .TypeEngine.comparator_factory . |
Method | adapt |
Produce an "adapted" form of this type, given an "impl" class to work with. |
Method | as_generic |
Return an instance of the generic type corresponding to this type using heuristic rule. The method may be overridden if this heuristic rule is not sufficient. |
Method | bind_expression |
Given a bind value (i.e. a .BindParameter instance), return a SQL expression in its place. |
Method | coerce_compared_value |
Suggest a type for a 'coerced' Python value in an expression. |
Method | column_expression |
Given a SELECT column expression, return a wrapping SQL expression. |
Method | compare_against_backend |
Compare this type against the given backend type. |
Method | compare_values |
Compare two values for equality. |
Method | compile |
Produce a string-compiled form of this .TypeEngine . |
Method | dialect_impl |
Return a dialect-specific implementation for this .TypeEngine . |
Method | evaluates_none |
Return a copy of this type which has the .should_evaluate_none flag set to True. |
Method | get_dbapi_type |
Return the corresponding type object from the underlying DB-API, if any. |
Method | with_variant |
Produce a new type object that will utilize the given type when applied to the dialect of the given name. |
Class Variable | hashable |
Flag, if False, means values from this type aren't hashable. |
Class Variable | should_evaluate_none |
If True, the Python constant None is considered to be handled explicitly by this type. |
Class Variable | sort_key_function |
A sorting function that can be passed as the key to sorted. |
Static Method | _to_instance |
Undocumented |
Method | __repr__ |
Undocumented |
Method | __str__ |
Undocumented |
Method | _cached_bind_processor |
Return a dialect-specific bind processor for this type. |
Method | _cached_custom_processor |
Undocumented |
Method | _cached_literal_processor |
Return a dialect-specific literal processor for this type. |
Method | _cached_result_processor |
Return a dialect-specific result processor for this type. |
Method | _compare_type_affinity |
Undocumented |
Method | _default_dialect |
Undocumented |
Method | _dialect_info |
Return a dialect-specific registry which caches a dialect-specific implementation, bind processing function, and one or more result processing functions. |
Method | _gen_dialect_impl |
Undocumented |
Method | _resolve_for_literal |
adjust this type given a literal Python value that will be stored in a bound parameter. |
Method | _unwrapped_dialect_impl |
Return the 'unwrapped' dialect impl for this type. |
Method | copy |
Undocumented |
Method | copy_value |
Undocumented |
Class Variable | _is_array |
Undocumented |
Class Variable | _is_table_value |
Undocumented |
Class Variable | _is_tuple_type |
Undocumented |
Class Variable | _is_type_decorator |
Undocumented |
Class Variable | _isnull |
Undocumented |
Class Variable | _sqla_type |
Undocumented |
Property | _generic_type_affinity |
Undocumented |
Property | _has_bind_expression |
memoized boolean, check if bind_expression is implemented. |
Property | _has_column_expression |
memoized boolean, check if column_expression is implemented. |
Property | _static_cache_key |
Undocumented |
Property | _type_affinity |
Return a rudimental 'affinity' value expressing the general class of type. |
Inherited from Traversible
(via TypeEngine
):
Method | get_children |
Return immediate child .visitors.Traversible elements of this .visitors.Traversible . |
Method | __class_getitem__ |
Undocumented |
Inherited from SchemaType
:
Method | _is_impl_for_variant |
Undocumented |
Method | _on_metadata_create |
Undocumented |
Method | _on_metadata_drop |
Undocumented |
Method | _on_table_create |
Undocumented |
Method | _on_table_drop |
Undocumented |
Method | _set_parent |
Associate with this SchemaEvent's parent object. |
Method | _variant_mapping_for_set_table |
Undocumented |
Method | adapt |
Undocumented |
Method | copy |
Undocumented |
Method | create |
Issue CREATE DDL for this type, if applicable. |
Method | drop |
Issue DROP DDL for this type, if applicable. |
Class Variable | _use_schema_map |
Undocumented |
Instance Variable | inherit_schema |
Undocumented |
Instance Variable | metadata |
Undocumented |
Instance Variable | schema |
Undocumented |
Property | bind |
Undocumented |
Inherited from SchemaEventTarget
(via SchemaType
):
Method | _set_parent_with_dispatch |
Undocumented |
sqlalchemy.dialects.mysql.types._MatchType
Parameters | |
create_constraint | defaults to False. If the boolean is generated as an int/smallint, also create a CHECK constraint on the table that ensures 1 or 0 as a value. Note it is strongly recommended that the CHECK constraint have an explicit name in order to support schema-management concerns. This can be established either by setting the :paramref:`.Boolean.name` parameter or by setting up an appropriate naming convention; see :ref:`constraint_naming_conventions` for background.
Changed in version 1.4: - this flag now defaults to False, meaning
no CHECK constraint is generated for a non-native enumerated
type.
|
name | if a CHECK constraint is generated, specify the name of the constraint. |
_create_events | Undocumented |
Return a conversion function for processing bind values.
Returns a callable which will receive a bind parameter value as the sole positional argument and will return a value to send to the DB-API.
If processing is not necessary, the method should return None.
Note
This method is only called relative to a dialect specific type
object, which is often private to a dialect in use and is not
the same type object as the public facing one, which means it's not
feasible to subclass a .types.TypeEngine
class in order to
provide an alternate _types.TypeEngine.bind_processor
method, unless subclassing the _types.UserDefinedType
class explicitly.
To provide alternate behavior for
_types.TypeEngine.bind_processor
, implement a
_types.TypeDecorator
class and provide an implementation
of _types.TypeDecorator.process_bind_param
.
See Also
Parameters | |
dialect | Dialect instance in use. |
Return a conversion function for processing literal values that are to be rendered directly without using binds.
This function is used when the compiler makes use of the "literal_binds" flag, typically used in DDL generation as well as in certain scenarios where backends don't accept bound parameters.
Returns a callable which will receive a literal Python value as the sole positional argument and will return a string representation to be rendered in a SQL statement.
Note
This method is only called relative to a dialect specific type
object, which is often private to a dialect in use and is not
the same type object as the public facing one, which means it's not
feasible to subclass a .types.TypeEngine
class in order to
provide an alternate _types.TypeEngine.literal_processor
method, unless subclassing the _types.UserDefinedType
class explicitly.
To provide alternate behavior for
_types.TypeEngine.literal_processor
, implement a
_types.TypeDecorator
class and provide an implementation
of _types.TypeDecorator.process_literal_param
.
See Also
Return a conversion function for processing result row values.
Returns a callable which will receive a result row column value as the sole positional argument and will return a value to return to the user.
If processing is not necessary, the method should return None.
Note
This method is only called relative to a dialect specific type
object, which is often private to a dialect in use and is not
the same type object as the public facing one, which means it's not
feasible to subclass a .types.TypeEngine
class in order to
provide an alternate _types.TypeEngine.result_processor
method, unless subclassing the _types.UserDefinedType
class explicitly.
To provide alternate behavior for
_types.TypeEngine.result_processor
, implement a
_types.TypeDecorator
class and provide an implementation
of _types.TypeDecorator.process_result_value
.
See Also
Parameters | |
dialect | Dialect instance in use. |
coltype | DBAPI coltype argument received in cursor.description. |
str
=
sqlalchemy.dialects.mssql.BIT
, sqlalchemy.types.BOOLEAN
Undocumented
sqlalchemy.types.TypeEngine.python_type
Return the Python type object expected to be returned by instances of this type, if known.
Basically, for those types which enforce a return type, or are known across the board to do such for all common DBAPIs (like int for example), will return that type.
If a return type is not defined, raises NotImplementedError.
Note that any type also accommodates NULL in SQL which means you can also get back None from any type in practice.