文章内容
2021/6/18 10:38:03,作 者: 黄兵
SQLAlchemy Boolean 与 BOOLEAN的区别
最近在使用SQLAlchemy模型建表的时候,定义Bool值的时候,编辑器提示可以是Boolean
和BOOLEAN
,这两种定义有什么区别呢?
Boolean
是一个泛型类型:
泛型类型指定可以读取、写入和存储特定类型 Python 数据的列。SQLAlchemy 将在发出CREATE TABLE
语句时选择目标数据库上可用的最佳数据库列类型。
BOOLEAN
是SQL类型:
此类类型指的是属于 SQL 标准的类型,或者可能在数据库后端的子集中找到的类型。与“通用”类型不同,SQL 标准/多供应商类型不能保证在所有后端上工作,并且只会在那些通过名称明确支持它们的后端上工作。也就是说,该类型将始终在 DDL 中发出其确切名称CREATE TABLE
并发出。
通过上面两个类型可以看出,只要是SQLAlchemy数据类型大写的都是SQL类型,例如:ARRAY
,BIGINT
...
参考资料:
1、SQLAlchemy Boolean vs BOOLEAN
评论列表