sqlite_strings/
sqlite_strings.rs

1use barrel::backend::Sqlite;
2use barrel::{types, Migration, Table};
3
4fn main() {
5    let mut m = Migration::new();
6    m.create_table("users", |t: &mut Table| {
7        t.add_column("id", types::text().primary(true));
8        t.add_column("name", types::varchar(255).default("Anonymous")); // Default name is "Anonymous"
9        t.add_column("description", types::text().nullable(true)); // Can be null
10        t.add_column("age", types::integer());
11        t.add_column(
12            "posts",
13            types::foreign(
14                "posts",
15                "id",
16                types::ReferentialAction::Unset,
17                types::ReferentialAction::Unset,
18            ),
19        );
20        t.add_column("created_at", types::date());
21        t.add_column("owns_plushy_sharks", types::boolean());
22    });
23
24    println!("{}", m.make::<Sqlite>());
25}