【发布时间】:2014-09-24 19:53:55
【问题描述】:
假设我有一个要映射到的现有表,它包含 10 列;但是,我只关心通过指定的模型写入其中 3 个列。
如果我按照这个模型插入一条记录,那么模型中不包含的列下的值将导致为NULL。
SQLAlchemy 中是否有办法将列的默认值指定为不为 NULL?也许 0 表示整数或 '' 表示字符串?
【问题讨论】:
标签: python sql sqlalchemy
假设我有一个要映射到的现有表,它包含 10 列;但是,我只关心通过指定的模型写入其中 3 个列。
如果我按照这个模型插入一条记录,那么模型中不包含的列下的值将导致为NULL。
SQLAlchemy 中是否有办法将列的默认值指定为不为 NULL?也许 0 表示整数或 '' 表示字符串?
【问题讨论】:
标签: python sql sqlalchemy
由于 SQLAlchemy 不知道列,您必须在服务器端设置默认值。否则,指定所有列和define the default values。
class MyModel(Base):
foo = sa.Column(sa.String, default='bar')
【讨论】: