feat(sqlite): create empty database file on connect if missing

This commit is contained in:
t8y2
2026-06-16 13:55:44 +08:00
parent db7b730dd3
commit 558b9301a2
11 changed files with 53 additions and 3 deletions
+5 -1
View File
@@ -447,7 +447,11 @@ impl AppState {
})
.collect();
PoolKind::Sqlite(
db::sqlite::connect_path_with_extensions(&expand_tilde(&db_config.host), extensions).await?,
db::sqlite::connect_path_create_if_missing_with_extensions(
&expand_tilde(&db_config.host),
extensions,
)
.await?,
)
}
DatabaseType::Rqlite => {
+7
View File
@@ -46,6 +46,13 @@ pub async fn connect_path_create_if_missing(path: &str) -> Result<SqliteHandle,
connect_path_with_options(path, true, Vec::new()).await
}
pub async fn connect_path_create_if_missing_with_extensions(
path: &str,
extensions: Vec<SqliteExtensionSpec>,
) -> Result<SqliteHandle, String> {
connect_path_with_options(path, true, extensions).await
}
async fn connect_path_with_options(
path: &str,
create_if_missing: bool,