首页 > 解决方案 > Python 数据库抽象层比较示例

问题描述

我对 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是定义表的类。

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

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

谢谢!

标签: pythondatabasedatabase-abstraction

解决方案


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

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


推荐阅读