我有一个程序来计算一组普通的互连对象(这些对象由基本上是String,int或链接到另一个对象的属性组成)。 我希望将对象存储在关系数据库中,以便于SQL查询(来自其他程序)。
此外,对象(类)倾向于改变和发展。我希望有一个通用的解决方案,无论何时进化,都不需要对“持久层”进行任何更改。
你有没有办法做到这一点?
答案 0 :(得分:1)
如何在JSON中存储对象? 在将对象存储到数据库之前,您可以编写一个序列化对象的函数。 如果您有对象的特定标识符,我建议您将其用作索引,以便您可以轻松检索它。
答案 1 :(得分:1)
我自己没有使用它,但我听起来像是SQLAlchemy的用例:
它基本上允许您将对象属性定义为表 - 列或与其他类的关系,并基本上处理所有直接的数据库交互。 可能还有其他库在做同样的事情,但SQLAlchemy就是我曾经偶然发现并且似乎很常用的。
答案 2 :(得分:0)
答案 3 :(得分:0)
SQLAlchemy很棒。另一个主要选择是使用django的ORM:
https://docs.djangoproject.com/en/dev/intro/tutorial01/#creating-models
基本上在python中创建扩展django模型类的类被映射到标准的关系数据库表。