15个版本 (稳定)

2.2.0 2024年5月31日
2.1.0 2023年5月26日
2.0.0 2022年8月29日
2.0.0-rc.12022年7月22日
0.99.0 2017年11月28日

#427 in 数据库接口

Download history • Rust 包仓库 61038/week @ 2024-05-02 • Rust 包仓库 65875/week @ 2024-05-09 • Rust 包仓库 72817/week @ 2024-05-16 • Rust 包仓库 58245/week @ 2024-05-23 • Rust 包仓库 63654/week @ 2024-05-30 • Rust 包仓库 65506/week @ 2024-06-06 • Rust 包仓库 64473/week @ 2024-06-13 • Rust 包仓库 61764/week @ 2024-06-20 • Rust 包仓库 53821/week @ 2024-06-27 • Rust 包仓库 54554/week @ 2024-07-04 • Rust 包仓库 58330/week @ 2024-07-11 • Rust 包仓库 66087/week @ 2024-07-18 • Rust 包仓库 63552/week @ 2024-07-25 • Rust 包仓库 63134/week @ 2024-08-01 • Rust 包仓库 65713/week @ 2024-08-08 • Rust 包仓库 50546/week @ 2024-08-15 • Rust 包仓库

254,490 每月下载量
用于 178 个crate(126直接使用)

MIT/Apache

2MB
36K SLoC

提供维护数据库模式的函数。

数据库迁移始终提供更新模式以及撤销自身的程序。Diesel的迁移是分版本的,并按顺序执行。Diesel还会自动跟踪已运行的迁移。您的迁移不需要是幂等的,因为Diesel将确保除非已撤销,否则不会运行任何迁移两次。

迁移应放置在项目根目录下的 /migrations 目录中(与 Cargo.toml 相同的目录)。当运行这些函数中的任何一个时,Diesel将搜索当前目录及其父目录中的迁移目录,直到找到包含 Cargo.toml 的目录。

单个迁移应包含一个文件夹,包含两个文件,up.sqldown.sqlup.sql 将用于运行迁移,而 down.sql 将用于撤销它。该文件夹本身应具有以下结构 {version}_{migration_name}。建议您使用创建时间戳作为版本。

迁移可以由CLI运行,也可以嵌入到编译后的应用程序中,并通过代码执行,例如在建立数据库连接后。更多信息,请参考embed_migrations!宏。

依赖项

~1–1.6MB
~36K SLoC