2011-06-02 51 views
3

我目前正在计划一个可以在对象关系数据库上工作的应用程序。工作很简单:只需获取数据,分析数据,将其显示给用户并回写一些更改。为了支持广泛的数据库目前,我正在寻找访问库,以满足所有(或至少部分)以下要求(按重要性排序):没有配置的数据库库/ ORM映射器

  • Java或Python。我使用的是Jython,所以两者都是可能的,但是我更喜欢使用Python来处理Java

  • 返回关于数据库的元数据。我需要能够获取所有表及其模式的列表。理想情况下,这些信息将作为对象给出。

  • 使用从代码

  • 完整的运行时配置来从多个表的记录的能力。我不想在某些XML文件中需要某种映射配置。

  • 某种ORM映射。我可以没有它,但它会很高兴。如果我得到一堆带有数据的对象,并且必须通过反射来完成剩下的工作,那我完全可以。

什么是这样一个任务的最佳图书馆(至少有一个存在;))。

回答

1

您可以使用SQLAlchemy,它在Jython上使用zxJDBCDjango也可以在Jython上运行,所以这是另一种选择。两者都允许你使用Python来声明你的模型。 Django的ORM稍微冗长一点,而SQLAlchemy可以说更强大,并且倾向于提供更好的控制。还有一个很好的声明式包装,用于使用名为Elixir的SQLAlchemy。