相关文章推荐
老实的雪糕  ·  Python 安装下载好的 ...·  2 年前    · 
瘦瘦的手电筒  ·  [ PyQt入门教程 ] Qt ...·  2 年前    · 
精彩文章免费看

[Sqlalchemy] 动态创建表和模型

动态创建表

  • autoincrement 自增
  • primary_key 主键
  • metaData = MetaData(engine) # 创建表
    teacher = Table('teache',metaData,
    Column('id',Integer,autoincrement=True,primary_key=True),
    Column('name',String(50)),
    Column('age',Integer),
    Column('sex',String(10)),
    metaData.create_all(engine)

    动态获取模型

    def get_model(suffix):
    DynamicBase = declarative_base(class_registry=dict())

    class MyModel(DynamicBase): 
     __tablename__ = 'table_{suffix}'.format(suffix=suffix) 
     id = Column(Integer, primary_key=True) 
     name = Column(String) 
     age = Column(String) 
     sex = Column(String) 
    return MyModel 
    

    参考资料:

  • python 笔记 之 sqlalchemy操作数据库-创建表
    https://my.oschina.net/u/3824134/blog/1811607

  • python – 在SQLAlchemy中动态设置tablename来分片?
    https://www.jb51.cc/python/186226.html

  • 在SQLAlchemy中动态设置tablename用于分片?
    https://stackoverrun.com/cn/q/5228815

  •