SQLAlchemy:在列反射期间排除几列?

时间:2013-12-11 18:19:20

标签: sqlalchemy

我使用声明性基础和反射来映射表。 db表有1k +列,但我想只映射几百个列,这些列的名称可以通过sql获得。

使用反射,我在事件处理函数中获取Column信息,这允许我修改Column的属性,但我无法从映射中跳过列。

def column_reflect(inspector, table, column_info):
   #...

class MYCLASS1(Base):
    __table__ = Table('MYTABLE1', mymetadata, autoload_with=myengine, autoload=True, listeners=[('column_reflect', column_reflect)])

SQLAlchemy是否支持在使用反射时跳过某些列?

SQLA版本:0.83和0.9.0b1。

1 个答案:

答案 0 :(得分:0)

'van'回答了我的问题,所以标记了问题。 解决方案是在Table()上使用include_columns参数。