4 个版本
0.2.0 | 2023年10月7日 |
---|---|
0.1.2 | 2023年5月18日 |
0.1.1 | 2023年5月17日 |
0.1.0 | 2023年1月15日 |
#1375 在 开发工具
用于 pg-taskq
21KB
468 代码行
pg-setup
用于创建和删除 Postgres 数据库的简单辅助工具。适用于测试。
该工具使用 psql 命令行实用程序(默认)或 sqlx 和 sqlx-cli(使用 sqlx 迁移)。使用 sqlx
功能。
示例
#
let db_uri = "postgres://127.0.0.1:5432/pg_setup_example";
let db = PostgresDBBuilder::new(db_uri)
.schema("public")
// optionally keep db
.keep_db()
.start()
.await?;
// optionally create a table
db.create_table("users", |t| {
t.add_column("id", "uuid", |c| c.primary_key());
t.add_column("name", "text", |c| c.not_null());
t.add_column("email", "text", |c| c.not_null());
t.add_column("created_at", "timestamp", |c| c.not_null());
})
.await?;
// execute sql
db.execute("SELECT table_schema,table_name, table_type FROM information_schema.tables WHERE table_schema = 'public';").await?;
// db will be dropped at the end of the scope, unless `keep_db` is called!
如果您想保留数据库以供调试,可以调用 PostgresDB::keep_db
。
默认情况下将使用 public
架构,但您可以使用 PostgresDB::schema
设置此值。
许可证:MIT
依赖关系
~12–23MB
~359K SLoC