From 273304347d42d58248c79b4eaa64c496c3c63ffe Mon Sep 17 00:00:00 2001 From: Edwin Svensson Date: Tue, 22 Aug 2023 11:10:11 +0000 Subject: [PATCH] fix sqlx offline mode --- examples/databases/.gitignore | 1 + ...327afd9516143806981e11f8e34d069c14472.json | 32 ++++++++ ...78d86afd6a6d36771bfeb12f331abca6279cf.json | 12 +++ ...1ceb0bad0e473701e51ef21ecb2973c76b4df.json | 20 +++++ ...82aa1bee940f0776fae3f9962639b78328858.json | 12 +++ ...9adac27b27a3cf7bf853af3a9f130b1684d91.json | 12 +++ examples/databases/sqlx-data.json | 81 ------------------- examples/databases/src/sqlx.rs | 8 +- 8 files changed, 93 insertions(+), 85 deletions(-) create mode 100644 examples/databases/.gitignore create mode 100644 examples/databases/.sqlx/query-11e3096becb72f427c8d3911ef4327afd9516143806981e11f8e34d069c14472.json create mode 100644 examples/databases/.sqlx/query-3c289da9873097a11191dbedc5c78d86afd6a6d36771bfeb12f331abca6279cf.json create mode 100644 examples/databases/.sqlx/query-4415c35941e52a981b10707fe2e1ceb0bad0e473701e51ef21ecb2973c76b4df.json create mode 100644 examples/databases/.sqlx/query-668690acaca0a0c0b4ac306b14d82aa1bee940f0776fae3f9962639b78328858.json create mode 100644 examples/databases/.sqlx/query-79301b44b77802e0096efd73b1e9adac27b27a3cf7bf853af3a9f130b1684d91.json delete mode 100644 examples/databases/sqlx-data.json diff --git a/examples/databases/.gitignore b/examples/databases/.gitignore new file mode 100644 index 0000000000..98e6ef67fa --- /dev/null +++ b/examples/databases/.gitignore @@ -0,0 +1 @@ +*.db diff --git a/examples/databases/.sqlx/query-11e3096becb72f427c8d3911ef4327afd9516143806981e11f8e34d069c14472.json b/examples/databases/.sqlx/query-11e3096becb72f427c8d3911ef4327afd9516143806981e11f8e34d069c14472.json new file mode 100644 index 0000000000..247b40e2fd --- /dev/null +++ b/examples/databases/.sqlx/query-11e3096becb72f427c8d3911ef4327afd9516143806981e11f8e34d069c14472.json @@ -0,0 +1,32 @@ +{ + "db_name": "SQLite", + "query": "SELECT id, title, text FROM posts WHERE id = ?", + "describe": { + "columns": [ + { + "name": "id", + "ordinal": 0, + "type_info": "Int64" + }, + { + "name": "title", + "ordinal": 1, + "type_info": "Text" + }, + { + "name": "text", + "ordinal": 2, + "type_info": "Text" + } + ], + "parameters": { + "Right": 1 + }, + "nullable": [ + false, + false, + false + ] + }, + "hash": "11e3096becb72f427c8d3911ef4327afd9516143806981e11f8e34d069c14472" +} diff --git a/examples/databases/.sqlx/query-3c289da9873097a11191dbedc5c78d86afd6a6d36771bfeb12f331abca6279cf.json b/examples/databases/.sqlx/query-3c289da9873097a11191dbedc5c78d86afd6a6d36771bfeb12f331abca6279cf.json new file mode 100644 index 0000000000..a78e822ab5 --- /dev/null +++ b/examples/databases/.sqlx/query-3c289da9873097a11191dbedc5c78d86afd6a6d36771bfeb12f331abca6279cf.json @@ -0,0 +1,12 @@ +{ + "db_name": "SQLite", + "query": "INSERT INTO posts (title, text) VALUES (?, ?)", + "describe": { + "columns": [], + "parameters": { + "Right": 2 + }, + "nullable": [] + }, + "hash": "3c289da9873097a11191dbedc5c78d86afd6a6d36771bfeb12f331abca6279cf" +} diff --git a/examples/databases/.sqlx/query-4415c35941e52a981b10707fe2e1ceb0bad0e473701e51ef21ecb2973c76b4df.json b/examples/databases/.sqlx/query-4415c35941e52a981b10707fe2e1ceb0bad0e473701e51ef21ecb2973c76b4df.json new file mode 100644 index 0000000000..99a73650ca --- /dev/null +++ b/examples/databases/.sqlx/query-4415c35941e52a981b10707fe2e1ceb0bad0e473701e51ef21ecb2973c76b4df.json @@ -0,0 +1,20 @@ +{ + "db_name": "SQLite", + "query": "SELECT id FROM posts", + "describe": { + "columns": [ + { + "name": "id", + "ordinal": 0, + "type_info": "Int64" + } + ], + "parameters": { + "Right": 0 + }, + "nullable": [ + false + ] + }, + "hash": "4415c35941e52a981b10707fe2e1ceb0bad0e473701e51ef21ecb2973c76b4df" +} diff --git a/examples/databases/.sqlx/query-668690acaca0a0c0b4ac306b14d82aa1bee940f0776fae3f9962639b78328858.json b/examples/databases/.sqlx/query-668690acaca0a0c0b4ac306b14d82aa1bee940f0776fae3f9962639b78328858.json new file mode 100644 index 0000000000..d744583bc9 --- /dev/null +++ b/examples/databases/.sqlx/query-668690acaca0a0c0b4ac306b14d82aa1bee940f0776fae3f9962639b78328858.json @@ -0,0 +1,12 @@ +{ + "db_name": "SQLite", + "query": "DELETE FROM posts", + "describe": { + "columns": [], + "parameters": { + "Right": 0 + }, + "nullable": [] + }, + "hash": "668690acaca0a0c0b4ac306b14d82aa1bee940f0776fae3f9962639b78328858" +} diff --git a/examples/databases/.sqlx/query-79301b44b77802e0096efd73b1e9adac27b27a3cf7bf853af3a9f130b1684d91.json b/examples/databases/.sqlx/query-79301b44b77802e0096efd73b1e9adac27b27a3cf7bf853af3a9f130b1684d91.json new file mode 100644 index 0000000000..6aa292f3d1 --- /dev/null +++ b/examples/databases/.sqlx/query-79301b44b77802e0096efd73b1e9adac27b27a3cf7bf853af3a9f130b1684d91.json @@ -0,0 +1,12 @@ +{ + "db_name": "SQLite", + "query": "DELETE FROM posts WHERE id = ?", + "describe": { + "columns": [], + "parameters": { + "Right": 1 + }, + "nullable": [] + }, + "hash": "79301b44b77802e0096efd73b1e9adac27b27a3cf7bf853af3a9f130b1684d91" +} diff --git a/examples/databases/sqlx-data.json b/examples/databases/sqlx-data.json deleted file mode 100644 index 9dbd494590..0000000000 --- a/examples/databases/sqlx-data.json +++ /dev/null @@ -1,81 +0,0 @@ -{ - "db": "SQLite", - "11e3096becb72f427c8d3911ef4327afd9516143806981e11f8e34d069c14472": { - "query": "SELECT id, title, text FROM posts WHERE id = ?", - "describe": { - "columns": [ - { - "name": "id", - "ordinal": 0, - "type_info": "Int64" - }, - { - "name": "title", - "ordinal": 1, - "type_info": "Text" - }, - { - "name": "text", - "ordinal": 2, - "type_info": "Text" - } - ], - "parameters": { - "Right": 1 - }, - "nullable": [ - false, - false, - false - ] - } - }, - "3c289da9873097a11191dbedc5c78d86afd6a6d36771bfeb12f331abca6279cf": { - "query": "INSERT INTO posts (title, text) VALUES (?, ?)", - "describe": { - "columns": [], - "parameters": { - "Right": 2 - }, - "nullable": [] - } - }, - "4415c35941e52a981b10707fe2e1ceb0bad0e473701e51ef21ecb2973c76b4df": { - "query": "SELECT id FROM posts", - "describe": { - "columns": [ - { - "name": "id", - "ordinal": 0, - "type_info": "Int64" - } - ], - "parameters": { - "Right": 0 - }, - "nullable": [ - false - ] - } - }, - "668690acaca0a0c0b4ac306b14d82aa1bee940f0776fae3f9962639b78328858": { - "query": "DELETE FROM posts", - "describe": { - "columns": [], - "parameters": { - "Right": 0 - }, - "nullable": [] - } - }, - "79301b44b77802e0096efd73b1e9adac27b27a3cf7bf853af3a9f130b1684d91": { - "query": "DELETE FROM posts WHERE id = ?", - "describe": { - "columns": [], - "parameters": { - "Right": 1 - }, - "nullable": [] - } - } -} \ No newline at end of file diff --git a/examples/databases/src/sqlx.rs b/examples/databases/src/sqlx.rs index 5977cc4800..0f0ca67bae 100644 --- a/examples/databases/src/sqlx.rs +++ b/examples/databases/src/sqlx.rs @@ -26,7 +26,7 @@ struct Post { async fn create(mut db: Connection, post: Json) -> Result>> { // There is no support for `RETURNING`. sqlx::query!("INSERT INTO posts (title, text) VALUES (?, ?)", post.title, post.text) - .execute(&mut *db) + .execute(&mut **db) .await?; Ok(Created::new("/").body(post)) @@ -35,7 +35,7 @@ async fn create(mut db: Connection, post: Json) -> Result) -> Result>> { let ids = sqlx::query!("SELECT id FROM posts") - .fetch(&mut *db) + .fetch(&mut **db) .map_ok(|record| record.id) .try_collect::>() .await?; @@ -55,7 +55,7 @@ async fn read(mut db: Connection, id: i64) -> Option> { #[delete("/")] async fn delete(mut db: Connection, id: i64) -> Result> { let result = sqlx::query!("DELETE FROM posts WHERE id = ?", id) - .execute(&mut *db) + .execute(&mut **db) .await?; Ok((result.rows_affected() == 1).then(|| ())) @@ -63,7 +63,7 @@ async fn delete(mut db: Connection, id: i64) -> Result> { #[delete("/")] async fn destroy(mut db: Connection) -> Result<()> { - sqlx::query!("DELETE FROM posts").execute(&mut *db).await?; + sqlx::query!("DELETE FROM posts").execute(&mut **db).await?; Ok(()) }