通过反射使用python填充复杂的SQL数据库?

时间:2015-08-13 15:22:06

标签: python mysql sqlalchemy

我有一个相对复杂的MySQL数据库(60多个表),我需要定期填充。大多数表都有很多外键约束。我开始使用SQL Alchemy编写我的导入引擎。

我是否需要使用SQL Alchemy类重建整个数据库才能执行此操作?有没有人有更好的建议?实际上只有8个表接受新的原始数据,其余表从这些表中填充。

1 个答案:

答案 0 :(得分:0)

您可以使用SQLAlchemy反射来创建映射到MySQL表结构的类。见Reflecting Database Objects。那里有一个子章节,展示了如何反映所有表格(反映数据库对象)。

从上面的链接复制的代码反映一个表:

messages = Table('messages', meta, autoload=True, autoload_with=engine)

所有表格:

meta = MetaData()
meta.reflect(bind=someengine)
users_table = meta.tables['users']
addresses_table = meta.tables['addresses']
相关问题