PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Mengatur stempel waktu di dalam transaksi

Ini semacam pertanyaan muncul dari waktu ke waktu-- sejauh yang saya tahu, satu-satunya cara yang sepenuhnya dapat diandalkan adalah melakukan apa yang telah Anda jelaskan, menyimpan ID yang diperbarui di beberapa tabel dalam proses pertama dan menandainya sebagai diproses di yang kedua. Pada dasarnya ini adalah menciptakan kembali antrian pesan dalam database. Anda telah menjelaskan dengan cukup baik bagaimana solusi naif akan melewatkan pembaruan.

Memiliki proses impor menandai baris yang diperbarui dapat dilakukan dengan cukup mudah, atau bahkan diimplementasikan menggunakan pemicu di tabel data Anda. Jika Anda hanya memiliki satu proses konsumen, maka yang harus dilakukan adalah delete from updated_item returning item_id untuk mendapatkan daftar pembaruan. Kedengarannya jauh lebih rumit tetapi IMHO tidak, sungguh. Fitur-fitur seperti dapat memantau seberapa besar backlog juga muncul secara gratis.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kembalikan setelah kesalahan dalam transaksi

  2. Ubah Tanggal menjadi Hari Julian di PostgreSQL

  3. Pengaturan LC_CTYPE yang dipilih memerlukan penyandian LATIN1

  4. Menyimpan data terenkripsi di Postgres

  5. Postgresql:Bagaimana cara menghindari tanda kutip tunggal di pemicu Database?