Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Pantau sisipan MySQL dari aplikasi yang berbeda

Saya pikir Anda dapat mencapai sesuatu seperti ini dengan cukup mudah, dengan asumsi Anda tidak keberatan membuat beberapa tabel &pemicu tambahan di database Anda, dan bahwa aplikasi java pemantauan harus melakukan polling database daripada secara khusus menerima pemicu.

Dengan asumsi tabel yang ingin Anda pantau adalah seperti ini:

CREATE TABLE ToMonitor ( id INTEGER PRIMARY KEY, value TEXT );

Kemudian Anda membuat tabel untuk melacak perubahan, dan pemicu yang mengisi tabel tersebut:

CREATE TABLE InsertedRecords( value TEXT );
CREATE TRIGGER trig AFTER INSERT ON account
FOR EACH ROW INSERT INTO InsertedRecords( value ) VALUES ( NEW.value );

Ini akan menyebabkan tabel InsertedRecords diisi dengan setiap sisipan yang terjadi di ToMonitor.

Kemudian Anda hanya perlu mengatur aplikasi pemantauan Anda untuk secara berkala SELECT * from InsertedRecords , ambil tindakan yang sesuai, lalu hapus catatan dari InsertedRecords

EDIT:Sedikit alternatif, jika Anda tidak keberatan dengan sedikit pengkodean C/C++, adalah dengan ikuti petunjuk di sini untuk membuat fungsi SQL khusus yang memicu aplikasi pemantauan Anda menjadi tindakan, lalu panggil saja fungsi SQL itu dari dalam pemicu yang Anda buat.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Django - OperationalError:(2006, 'server MySQL telah hilang')

  2. Doctrine 2 dan tabel tautan Banyak-ke-banyak dengan bidang tambahan

  3. Batasan kunci utama MySql dengan nama

  4. Menggunakan Order By di codeigniter

  5. menjalankan rata-rata di mysql