2个不稳定版本

0.2.0 2022年6月25日
0.1.0 2020年8月17日

#2540数据库接口

33 每月下载量
用于 asyncmigrate-cli

Apache-2.0

33KB
748

asyncmigrate

支持异步的数据库迁移

支持的数据库

  • PostgreSQL

许可证

Apache许可证2.0

SQL文件名规则

SQL文件的命名必须遵循以下规则。

VERSION__NAME.sql

VERSION 必须是一个简单的数字,不能包含点。

示例

use asyncmigrate::{MigrationError, Migration};
use rust_embed::RustEmbed;
 
#[derive(RustEmbed)]
#[folder = "schema/"]
struct Assets;
 
let mut connection = asyncmigrate::connect(
    "postgres://dbmigration-test:[email protected]:5432/dbmigration-test",
)
.await?;
 
let changeset = asyncmigrate::MigrationChangeSets::load_asset("default", Assets)?;

// Run migration
connection.migrate(&changeset, None).await?;
 
// Rollback
connection.rollback("default", None).await?;

lib.rs:

支持异步的数据库迁移

支持的数据库

  • PostgreSQL

许可证

Apache许可证2.0

示例

use asyncmigrate::{MigrationError, Migration};
use rust_embed::RustEmbed;

#[derive(RustEmbed)]
#[folder = "schema/"]
struct Assets;

let mut connection = asyncmigrate::connect(
    "postgres://dbmigration-test:[email protected]:5432/dbmigration-test",
)
.await?;

let changeset = asyncmigrate::MigrationChangeSets::load_asset("default", Assets)?;

// Run migration
connection.migrate(&changeset, None).await?;

// Rollback
connection.rollback("default", None).await?;

依赖

~6–20MB
~261K SLoC