Skip to main content

migration

Macro migration 

Source
macro_rules! migration {
    (
        $name:ident,
        version: $version:expr,
        name: $migration_name:expr,
        up: |$up_conn:ident| $up_body:block
        $(, down: |$down_conn:ident| $down_body:block)?
    ) => { ... };
}
Expand description

Helper macro to define a migration

§Example

migration!(
    CreateUsersTable,
    version: 2,
    name: "create_users_table",
    up: |conn| {
        conn.execute(
            "CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)",
            [],
        )?;
        Ok(())
    },
    down: |conn| {
        conn.execute("DROP TABLE users", [])?;
        Ok(())
    }
);