sql >> データベース >  >> RDS >> Mysql

Python:mysqlデータベースの変更に関する通知を取得する方法は?

    理論的には可能ですが、お勧めしません:

    基本的に、テーブルにはトリガーがあり、UDFを呼び出します。UDFは何らかの方法でPythonアプリと通信します。

    落とし穴には、エラーが発生した場合に何が起こるかが含まれますか?

    ブロックした場合はどうなりますか?トリガー内で発生することはすべて、理想的にはほぼ瞬時に行われる必要があります。

    ロールバックされるトランザクション内にある場合はどうなりますか?

    私が考えもしなかった問題は他にもたくさんあると思います。

    可能であれば、データアクセス層にアプリの残りの部分に通知させることをお勧めします。制御できないプログラムがデータベースを変更するタイミングを探している場合は、運が悪い可能性があります。

    あまり理想的ではありませんが、トリガー内から別のプログラムを呼び出すよりも優れた別の方法は、トリガー付きのトリガーによって更新されるある種の「LastModified」テーブルを設定することです。次に、アプリで、その日時が最後にチェックしたときよりも大きいかどうかを確認します。



    1. 現在のデータを合計するMySQLSELECT関数

    2. SQLiteデータベースから取得した各アイテムを独自のTextviewに設定する方法

    3. PHP / mysqlは、UPDATEステートメントの影響を受ける行の数を取得します

    4. PowerManager.PARTIAL_WAKE_LOCK android