我希望"类型"在这里正确使用。也许我的意思是"论点"。随意编辑。
我正在使用带有SQLAlchemy的Flask模型创建数据库,在哪里可以找到所有不同可能的Column参数的列表,例如:
account_id = db.Column(db.Integer, nullable=False)
我知道一些明显的类型,例如db.Integer
或db.String
。但是,我似乎无法在SQL Alchemy文档或Flask文档中找到创建db.Column
实例的所有可能参数的列表。我看错了吗?
有没有办法区分像db.Integer
这样的东西到tinyint,bigint等?
对于选项,例如nullable=False
,我在创建db.Column
实例时找不到所有可能选项的良好列表。
答案 0 :(得分:33)
我认为您正在寻找文档中的Column and Data Types页面。 一点HTML解析给出:
答案 1 :(得分:18)
通过感官直接感知文档,但如果您仍想在命令行中看到它,请尝试使用某个IDE,或者只需键入以下内容:
(通常我们的db
只是SQLALCHEMY()
)
>>>import sqlalchemy
>>>dir(sqlalchemy.sql.sqltypes)
['BIGINT',
'BINARY',
'BLOB',
'BOOLEAN',
'BOOLEANTYPE',
'BigInteger',
'Binary',
'Boolean',
'CHAR',
'CLOB',
'Comparator',
'Concatenable',
'DATE',
'DATETIME',
'DECIMAL',
'Date',
'DateTime',
'Enum',
'FLOAT',
'Float',
'INT',
'INTEGER',
'INTEGERTYPE',
'Integer',
'Interval',
'LargeBinary',
'NCHAR',
'NULLTYPE',
'NUMERIC',
'NVARCHAR',
'NullType',
'Numeric',
'PickleType',
'REAL',
'SMALLINT',
'STRINGTYPE',
'SchemaEventTarget',
'SchemaType',
'SmallInteger',
'String',
'TEXT',
'TIME',
'TIMESTAMP',
'Text',
'Time',
'TypeDecorator',
'TypeEngine',
'Unicode',
'UnicodeText',
'VARBINARY',
'VARCHAR',
'_Binary',
'_DateAffinity',
'_DefaultColumnComparator',
'__builtins__',
'__doc__',
'__file__',
'__name__',
'__package__',
'_bind_or_error',
'_defer_name',
'_type_map',
'codecs',
'decimal',
'dt',
'event',
'exc',
'operators',
'pickle',
'processors',
'quoted_name',
'to_instance',
'type_api',
'type_coerce',
'util']
这些可能就是你想要的。
答案 2 :(得分:0)
这是我在sqlalchemy / types.py中找到的
https://github.com/zzzeek/sqlalchemy/blob/master/lib/sqlalchemy/types.py