8个稳定版本
1.2.0 | 2022年2月9日 |
---|---|
1.1.0 | 2020年11月19日 |
1.0.5 | 2020年11月19日 |
1.0.4 | 2020年6月27日 |
1.0.2 | 2020年6月25日 |
#2749 在 数据库接口
74 每月下载量
11KB
165 代码行
sqlx-pg-migrate
使用SQLx在PostgreSQL数据库上运行迁移的库。有关如何使用库的说明,请参阅文档。
lib.rs
:
使用SQLx在PostgreSQL数据库上运行迁移的库。
创建一个包含你的迁移的目录。库会按顺序运行所有文件。建议的命名规范是 000_first.sql
,001_second.sql
等等。
库
- 必要时将创建数据库。
- 将创建一个名为
sqlx_pg_migrate
的表来管理迁移状态。 - 将在单个事务中运行所有内容,因此要么运行所有挂起的迁移,要么什么都不运行。
- 期望您不要删除或重命名迁移。
- 期望您不要在两个现有迁移之间放置新的迁移。
- 期望文件名和内容为UTF-8。
- 没有回滚 - 只写入新的迁移。
您需要将这些两个crate作为依赖项添加
[dependencies]
include_dir = "0.6"
sqlx-pg-migrate = "1.0"
用法如下
use sqlx_pg_migrate::migrate;
use include_dir::{include_dir, Dir};
// Use include_dir! to include your migrations into your binary.
// The path here is relative to your cargo root.
static MIGRATIONS: Dir = include_dir!("migrations");
// Somewhere, probably in main, call the migrate function with your DB URL
// and the included migrations.
migrate(&db_url, &MIGRATIONS).await?;
依赖项
~11MB
~218K SLoC