如何使用锈柴油创建新数据库?

Posted

技术标签:

【中文标题】如何使用锈柴油创建新数据库?【英文标题】:How do I create a new database using rust diesel? 【发布时间】:2020-02-06 07:49:09 【问题描述】:

是否可以使用 Rust 的柴油数据库箱创建新数据库?我在文档中找不到任何东西。我对 Sqlite 特别感兴趣。

【问题讨论】:

【参考方案1】:

TBH,我并没有真正在文档中进行搜索,但是在 Cargo.toml 方面,您需要:

[dependencies]
diesel =  version = "1.4.3", features = ["sqlite"] 

.env 文件中,您可以指定数据库文件的路径,例如:

DATABASE_URL=mydb.sqlite3

如果您遵循“入门”指南,那么您只需使用SqliteConnection 而不是PgConnection

use diesel::sqlite::SqliteConnection;

// ...

pub fn establish_connection() -> SqliteConnection 
    // ...

【讨论】:

【参考方案2】:

您要查找的不是 diesel 库,而是其对应的 CLI 工具 diesel_cli。见http://diesel.rs/guides/getting-started/。

【讨论】:

我想在运行时创建数据库。但实际上柴油会自动执行此操作。 @MartinEllison By how? embedded_migration? 当你打开数据库时,如果它不存在,那么 sqLite 会为你创建它。你可以运行你的迁移然后创建你的表。 @MartinEllison 哦,那可能只有SQLite才有。我尝试使用 PostgreSQL,但最终开始创建数据库并使用diesel_cli 命令设置表:柴油设置。

以上是关于如何使用锈柴油创建新数据库?的主要内容,如果未能解决你的问题,请参考以下文章

无法在锈柴油中使用通用参数实现特征

锈柴油orm查询

如何使用Diesel格式化SQL结果的日期?锈

如何在 graphQL 突变中使用柴油和杜松修复 mysql 的 sql 类型错误?

如何使用柴油进行 IN 查询?

Diesel join 无法推断类型