SQLAlchemy插入现有表,Model中未指定列的默认项值

时间:2014-09-24 10:55:45

标签: python sql sqlalchemy

假设我有一个我要映射到的包含10列的现有表;但是,我只关心通过指定的模型写入其中3列。

如果我根据此模型插入记录,则未包含在模型中的列下的值将导致为NULL。

SQLAlchemy中是否有一种方法可以将列的默认值指定为NULL?也许0表示整数或''表示字符串?

1 个答案:

答案 0 :(得分:2)

由于SQLAlchemy不知道列,因此您必须在服务器端设置默认值。否则,请指定所有列和define the default values

class MyModel(Base):
    foo = sa.Column(sa.String, default='bar')