April 6, 2022

RustでMySQLにデータをインサートした時にエラーが出た時に処理を止めない方法

(Rust 初心者なので、最良の書き方でない可能性が高いです。)

Python などのプログラミング言語で書く場合、トランザクションでエラーが出た場合に try・catch で例外処理に対応することがあります。Rust では、以下のように、match を用いて例外が発生した場合に対応するのが良さそうです。

let res = diesel::insert_into(data)
    .values(new_data)
    .execute(&connection);

match res {
    Ok(_res) => {}
    Err(err) => {
        println!("error {:?}", err);
    }
}

© gepuro 2013

Slideshare Icon from here , Home Icon from icons8