首页 > 解决方案 > SQLalchemy:动态创建具有不同列集的表

问题描述

我需要在 SQLalchemy ORM 中创建几个表,它们都遵循类似的模式:

这是创建表的示例:

class SomeTable1(Base):
    __tablename__ = 'dim_table1'
    
    id = Column(String(4), primary_key=True)
    shared_col1 = Column(String)
    dimension1 = Column(String, nullable=False)
    dimension2 = Column(String, nullable=False)
    shared_col2 = Column(String, nullable=False))

我的问题:我怎样才能动态地创建表,例如在循环中?无需明确说明每个表定义?说,基于这样的字典:

{
  "dimension_table1": ["dimension1", "dimension2"],
  "dimension_table2": ["dimension3"],
  ...
}

标签: pythonsqlalchemyorm

解决方案


推荐阅读