What are the viable database abstraction layers for Python

后端 未结 8 833
遇见更好的自我
遇见更好的自我 2020-12-28 17:51

I\'m starting to get involved in an open source project Gramps which is exploring switching their backend from BSDDB to a relational database. Either SQLite or MySQL we have

8条回答
  •  小蘑菇
    小蘑菇 (楼主)
    2020-12-28 18:13

    CouchDB is not a relational database, so it doesn't have a DB-API interface. It's a document database which means it wouldn't be as useful for Gramps because it would require some contortions to identify links between related people. On top of that it can only run in client/server mode.

    Any ORM like SQLAlchemy, SQLObject, or the Django ORM are implemented on top of DB-API and I recommend using any of these over direct DB-API because it can give Gramps the flexibility to run sqlite in embedded mode for local desktop users and then also share, sometime down the road, a Postgresql/MySQL database connection with a web based version of Gramps.

提交回复
热议问题