diff --git a/json-api/db/src/jwt.rs b/json-api/db/src/jwt.rs index 26efeaa..016c6b8 100644 --- a/json-api/db/src/jwt.rs +++ b/json-api/db/src/jwt.rs @@ -13,7 +13,12 @@ pub async fn listed(p: &Pool, id: u64, given_rng_value: &str) -> Result { pub async fn insert(p: &Pool, id: u64, given_rng_value: &str) -> Result<()> { let mut conn = p.get_conn().await?; - let q = "INSERT INTO jwt (id, rng) VALUES (:id, :rng)"; - conn.exec_drop(q, params!{"id" => id, "rng" => given_rng_value}).await?; + let q = "INSERT INTO jwt (id, rng) VALUES(:id, :rng) + ON DUPLICATE KEY UPDATE rng = :rng"; + let p = params!{ + "id" => id, + "rng" => given_rng_value, + }; + conn.exec_drop(q, p).await?; Ok(()) }