###前提・実現したいこと
以下の処理を行う時、どのような例外処理をするのがいいのでしょうか?
1.データベースのコネクションを確立する。(データソースは一つとします。)
2.DML文(select, insert, update, delete)を発行する。
3.コネクションを切断する。
###該当のソースコード
db.Query<User>("SELECT * FROM users"); db.Execute("UPDATE users SET Name = @Name WHERE id = @id", user);
例えば、上記のコードは内部で1~3の処理を行い、
Userのリストを返したり、更新を行います。
この時、以下のような例外が考えられると思いますが、
コネクションの確立失敗
DML文の発行失敗(制約にひっかかるなど)
構文エラー
try catchはどこでやるのが定石でしょうか?
内部で例外処理をせず、実行する時に毎回try catchするべきでしょうか?
try{ db.Execute("UPDATE users SET Name = @Name WHERE id = @id", user); }catch(Exception){ }
そもそも、データベースの接続をメソッドの内部に隠ぺいし、簡略化してもいいのでしょうか?
どのような設計・実装が好ましいのか教えてください。
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。