sql >> Database teknologi >  >> RDS >> Mysql

Overvåge MySQL-tabel for ændringer i et C#-program?

Hvis både applikationen og databaseserveren er på samme maskine, kan du muligvis opsætte en trigger i MySQL, som skriver ud til en logfil EFTER INDSÆT, OPDATERING og derefter oprette en FileSystemWatcher for at se den logfil. FileSystemWatcher vil udløses hændelser, når filen ændres som din ansøgning kan reagere på.

Udløseren kan se sådan ud:

create trigger MyTable_Monitor
after insert, update on MyTable
for each row
begin
select * from new into outfile "path/to/table.log"
end

Et problem, jeg ser med ovenstående kode, er, at outfilen ikke kan føjes til (bedst jeg kan se), så du kan have problemer, hvis der er flere forespørgsler udført i et opkald (eller endda flere forespørgsler, der udføres samtidigt af forskellige klienter). Alle forslag til forbedringer er velkomne.



  1. Tips til justering af postgreSQL-ydelse

  2. Hvordan bestilles efter to kolonner i SQL?

  3. Kald mysql indlejrede/indre funktioner i querydsl

  4. Sådan bruger du $_GET til at få flere parametre med samme navn i PHP