为什么 Django 更喜欢 Postgresql?

Lia*_*odi 1 database django postgresql

我在这里阅读了它的官方文件:

https://docs.djangoproject.com/en/1.8/topics/migrations/

PostgreSQL

就模式支持而言,PostgreSQL 是这里所有数据库中最强大的;唯一需要注意的是,添加具有默认值的列将导致表的完全重写,时间与其大小成正比。

出于这个原因,建议您始终使用 null=True 创建新列,因为这样它们将被立即添加。

但它并没有解释什么是“模式支持”。为什么 Postgresql 在 Django 上比其他人(MySQL 等)更有能力?

Mar*_*vin 5

此参考来自迁移文档。它指的是 PostgreSQL 是 Django 中唯一支持事务性 DDL 的数据库后端。即 Postgres 可以回滚CREATE TABLEALTER TABLE语句,而 MySQL、Oracle 和 SQLite 不能。