0

SQLite ファイルを使用してデータを保存する PyQt アプリケーションがあり、複数のユーザーが同じデータベースに読み書きできるようにしたいと考えています。QSqlDatabase と QSqlTableModels を項目ビューと共に使用して、読み取りと編集を行います。

そのままで、複数のユーザーがアプリケーションを起動し、さまざまなテーブルに対して読み取り/書き込みを行うことができます。問題は次のとおりです。user1 のアプリケーションがテーブル A を読み取り、user2 がテーブル A のインデックス 0,0 に書き込むとします。user1 アプリケーションは既にそのセルを読み取ってキャッシュしているため、user2 の変更はすぐには表示されません。Qt アイテム ビューは、dataChanged シグナルが発行されると更新されますが、この場合、データは別のアプリケーション インスタンスによって変更されています。別のアプリケーション インスタンスによってファイルの変更をトリガーする方法はありますか。これを処理する最善の方法は何ですか。

これは、データベースにSQLiteではなくSQLサーバーホスト接続を使用することで実際に最もよく解決されると思いますが、SQLiteの領域では、私の最も近い回避策は何ですか?

ありがとう

4

1 に答える 1