忍者ブログ

MIT流なメモ

中央競馬の予想や購入したもののメモなどを書いて行こうかと。まあ、個人的なメモ的なブログです。

UPSERT

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

コメント

ただいまコメントを受けつけておりません。

UPSERT

データベースのノウハウ不足は否めません。日々勉強になる事が沢山あります。今回はデータベースの基本操作の登録・更新・削除で新しい機能っていうのか方法がある事を知りました。

 

これまでSQLite3では基本INSERTは高速で更新とか遅いって話は知っていて、該当データの存在チェックはせずに登録処理をtryで失敗時にcatchして更新かけるコーディングしてたんですが、INSERT INTO ~ ON CONFLICT() DO UPDATE ~ってまあ、コーディングしてた事をSQL文記述で行う変更をしました。これ、このUPDATE側のSETでは、INSERT側で指定したパラメータをそのまま使うEXCLUDED使う事で、今までINSERTするのにパラメータ用意して、更新時にもパラメータ用意と2度しなければならなかったのも1回で済むってのもありがたい。

 

前回書き込み時に触れた接続文字列は直接指定する事で効いてるかは不明だが、エラーにはなってないので、フルセットアップに再挑戦中。ただ、これ自体では然程スピードが改善されてる感じは部分テストしてみた時にはなかった。少しでも改善されていれば、日付変わる前にフルセットアップが終わると嬉しいかも。

 

追記 2022.4.17
まだバグが残ってたので修正してフルセットアップやり直しですorz

拍手[0回]

PR

コメント

カレンダー

01 2025/02 03
S M T W T F S
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28

最新コメント

プロフィール

HN:
MIT
性別:
非公開

バーコード

ブログ内検索

コガネモチ

アクセス解析