• 数据库
    • DB-API
    • SQLAlchemy
    • Records
    • Django ORM
    • peewee
    • PonyORM
    • SQLObject

    数据库

    https://farm5.staticflickr.com/4225/33907152464_a99fdcc8de_k_d.jpg

    DB-API

    Python数据库API(DB-API)定义了一个Python数据库访问模块的标准接口。它的文档在 PEP 249 可以查看。几乎所有Python数据库模块,诸如 sqlite3psycopg 以及 mysql-python 都遵循这个接口。

    关于如何与遵守这一接口的模块交互的教程可以在这里找到:这里 以及这里 。

    SQLAlchemy

    SQLAlchemy 是一个流行的数据库工具。不像很多数据库库,它不仅提供一个ORM层,而且还有一个通用API来编写避免SQL的数据库无关代码。

    1. $ pip install sqlalchemy

    Records

    Records 是极简SQL库,旨在将原始SQL查询发送到各种数据库。数据可以以编程方式使用,也可以导出到一些有用的数据格式。

    1. $ pip install records

    还包括用于导出SQL数据的命令行工具。

    Django ORM

    Django ORM 是 Django 用来进行数据库访问的接口。

    它的思想建立在 models ,之上。这是一个致力于简化Python中数据操作的抽象层。

    基础:

    • 每个model是django.db.models.Model的子类。
    • model的每个属性表示数据库的域(field)。
    • Django给您一个自动生成的数据库访问API,参见Making queries。

    peewee

    peewee 是另一个ORM,它致力于轻量级和支持Python2.6+与3.2+默认支持的SQLite,MySQL以及Postgres。 model layer与Django ORM类似并且它拥有 SQL-like methods来查询数据。除了将SQLite,MySQL以及Postgres变为开箱即用,还有进一步的扩展功能可以在这里找到:collection of add-ons。

    PonyORM

    PonyORM 是一个ORM,它使用与众不同的方法查询数据库,有别于使用类似SQL的语言或者布尔表达式,它使用Python的生成器达到目的。而且还有一个图形化schema编辑器生成PonyORM实体。它支持Python2.6+与3.3+并且可以连接SQLite,MySQL,Postgres与Oracle。

    SQLObject

    SQLObject 是另一个ORM。它支持广泛的数据库,常见的MySQL,Postgres以及SQLite与更多的特别系统如SAP DB,SyBase与MSSQL。它只支持Python 2

    原文: http://pythonguidecn.readthedocs.io/zh/latest/scenarios/db.html