Enums rust:如何简化枚举嵌套匹配?
我得到了Enums rust:如何简化枚举嵌套匹配?,enums,rust,nested,match,Enums,Rust,Nested,Match,我得到了std::result::result的结果,我想检查是否找到了该行。 正确的代码: let sql = "select id,name from tablename LIMIT 0"; let r = sqlx::query_as::<_, Person>(sql).fetch_one(&pool).await; if let Err(err) = r { match err { sqlx::Error::RowNotFo
std::result::result
的结果,我想检查是否找到了该行。
正确的代码:
let sql = "select id,name from tablename LIMIT 0";
let r = sqlx::query_as::<_, Person>(sql).fetch_one(&pool).await;
if let Err(err) = r {
match err {
sqlx::Error::RowNotFound => println!("Not Found!!!"),
_ => (),
}
}
正确的方式2:
r.map_err(|err| if let sqlx::Error::RowNotFound = err {
println!("Not Found!!!");
});
有更简单的方法吗?您也可以这样匹配:
匹配r{
Err(sqlx::Error::RowNotFound)=>println!(“未找到!!!”),
_ => (),
}
您还可以查看这只是一个备选方案:
r.map_err(|err| if let sqlx::Error::RowNotFound = err {
println!("Not Found!!!");
});