
エントリーの編集

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
[Go言語]deferでトランザクション処理のエラーを返却する - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
[Go言語]deferでトランザクション処理のエラーを返却する - Qiita
やりたいこと defer関数内のerrorの値を、最終的なerrorの返り値として呼び出し元に返却したい 一緒にCo... やりたいこと defer関数内のerrorの値を、最終的なerrorの返り値として呼び出し元に返却したい 一緒にCommit()とRollback()も上手く捌きたい ≒ 共通化したい 実装例 個人で作成してみた参考レポジトリから、一部抜粋しています。 ファイルを直接参照されたい場合は、こちらからどうぞ。 (if文が続いて読みにくい部分は、各々でリファクタリングしてご参考になればと思います ) // トランザクションの共通処理をメソッド化 func (r *Repository) BeginTx(ctx context.Context, db Beginner) (*sql.Tx, func(context.Context, *sql.Tx, error) error, error) { tx, err := db.BeginTx(ctx, nil) if err != nil { ret