teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

タイトルを一部修正しました。

2020/07/18 12:26

投稿

giseta
giseta

スコア2

title CHANGED
@@ -1,1 +1,1 @@
1
- pythonでDB(SQLite)の更新を検知し、処理を発火させる方法はありますでしょうか。
1
+ pythonでDB(SQLite)の更新を検知し、処理を発火させる方法はあるのでしょうか。
body CHANGED
File without changes

1

状況4 の記述を修正しました。

2020/07/18 12:26

投稿

giseta
giseta

スコア2

title CHANGED
File without changes
body CHANGED
@@ -1,11 +1,12 @@
1
1
  ## やりたいこと
2
- pythonの他処理でDBにINSERTを行った(処理A)後に実行したい処理(処理B)があるのですが、処理Aから処理Bを呼び出すのではなく、DBに格納されたことを処理B側で検知し、発火する方法はあるのでしょうか。
2
+ pythonの他処理でDBにINSERTを行った(処理A)後に実行したい処理(処理B)があるのですが、処理Aから処理Bを呼び出すのではなく、DBに更新あったことを検知し、処理Bを発火する方法はあるのでしょうか。
3
3
 
4
4
  ## 状況など
5
5
  1 python3でSQLite3を利用しています。
6
6
  2 処理Aはおおよそ1分に1度の頻度でDBを書き換えますが、毎回10秒程度ずれがあります。
7
7
  3 処理AのINSERTは毎回1レコードとは限らず、複数レコードをINSERTする場合があります。ですので、DBに”変化があった場合”に発火させる最適な方法を知りたいです。
8
- 4 処理A、処理Bをそれぞれコントロールする上位のクラスを用意し、処理A、処理Bは並列処理させることを想定しています(このような表現が正しいのかわからず伝わればよいのですが。。)。た、処理Aから直接処理Bを呼び出すことく、独立て動す必要があります
8
+ 4 処理A、処理Bをそれぞれコントロールする上位のクラスを用意し、処理A、処理Bは並列処理させることを想定しています(このような表現が正しいのかわからず伝わればよいのですが。。)。「DBに更新があっことを検知する」のを上位クラスに任せて、Bを発火させるようイメージというのでょうか。
9
+ 5 処理Aから直接処理Bを呼び出すことなく、独立して動かす必要がある状況です。
9
10
 
10
11
  ## 補足
11
12
  1 DBでいうところの、トリガーのようなものをイメージしています。