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

トランザクション内のタイムスタンプの設定

    これある種の質問 私の知る限り、完全に信頼できる唯一の方法は、最初のプロセスで更新されたIDをテーブルに保存し、2番目のプロセスで処理済みとしてマークすることです。基本的に、これはデータベース内のメッセージキューを再発明することです。ナイーブなソリューションがどのように更新を見逃すかについて、あなたは非常によく説明しました。

    インポートプロセスで更新された行にマークを付けることは、非常に簡単に実行できます。また、データテーブルのトリガーを使用して実装することもできます。コンシューマープロセスが1つしかない場合は、delete from updated_item returning item_idだけです。 更新のリストを取得します。かなり複雑に聞こえますが、私見ではそうではありません。バックログの大きさを無料で監視できるなどの機能もあります。



    1. メソッドJPQLのクエリの検証に失敗しました

    2. 複数の左結合のLINQメソッド構文

    3. カンマ区切りの文字列をmysqlの行に分割します

    4. ソケット'/tmp/mysql.sockを介してローカルMySQLサーバーに接続できません