【问题标题】:Python database abstraction layers comparison examplesPython 数据库抽象层比较示例
【发布时间】:2020-08-06 17:25:27
【问题描述】:

我是 Python 的新手,来自 Drupal,我发现抽象层对我来说很有意义,也许是出于熟悉而不是其他任何事情。但我喜欢 Drupal 的地方在于,它有一种方法可以做某事,因此很容易找到一致的示例。

到目前为止,我非常喜欢 Python,但由于抽象层太多,而且这些层非常灵活,我发现很难找到一致的示例。

到目前为止,我已经尝试过 PyDal 和 SQLAlchemy。我发现 SQLAlchemy 更有意义,但我很难从基本查询开始。

例如更新人员集名称 = 'Sally' 其中 id = 1; 我希望抽象出如下内容:

db.update('person').where(id=1).values(name='Sally')

Person.where(id=1).set(name='Sally')

其中 Person 是定义表格的类。

似乎有很多插入但不更新或其他常见查询的示例,因此我很难找到适合我的抽象层。

有谁知道每个抽象层的示例负载,甚至是对每个层之间的示例进行比较的页面?如果做不到这一点,确定哪一层接近我上面的例子并给我一个例子或链接会非常棒。

谢谢!

【问题讨论】:

    标签: python database database-abstraction


    【解决方案1】:

    所以我刚刚发现了以下关于数据库抽象层的统计数据。 https://python.libhunt.com/categories/251-relational-databases

    由此看来,Peewee 似乎是最受欢迎的。我查看了文档,它似乎比 PyDal 和 SQLAlchemy 更清晰。我快速玩了一下,Peewee 似乎就是我要找的东西。我确信 SQLAlchemy 有它的位置,但对我来说,我不需要性能,我需要的是迄今为止 Peewee 似乎提供的快速简单的实现。如果我切换到其他东西会更新,但目前 Peewee 是适合我的。

    【讨论】:

    • 所以我刚刚发现 SQLAlchemy 可以将 Dataframe 写入数据库。它似乎是 Pandas 唯一支持的抽象层。所以对于 SQLAlchemy 来说可能是一个很大的 +1。
    猜你喜欢
    • 2012-11-22
    • 2015-05-15
    • 1970-01-01
    • 2010-10-15
    • 2010-09-08
    • 1970-01-01
    • 2011-02-19
    • 2019-07-24
    • 1970-01-01
    相关资源
    最近更新 更多