Użycie SQLite Trigger do aktualizacji pola „LastModified”
To może być więcej pytań projektowych, ale tutaj idzie. Piszę aplikację na Androida, która korzysta z lokalnej bazy danych SQLite (z wieloma tabelami), która synchronizuje się z bazą danych MySQL co jakiś czas. Chcę tylko zaktualizować zmodyfikowane wiersze w mojej bazie danych. Aby to zrobić, dodam kolumnę „last_modified
„do każdego wiersza wskazującego czas, w którym ten wiersz został dodany / zaktualizowany / zastąpiony / itd.
Jestem nowym użytkownikiem operacji na bazach danych, ale widziałem, że najlepszym sposobem na to może być wyzwalacz. Mam kilka pytań dotyczących wyzwalaczy, SQLite i Androida.
Przeczytałem ten link:na update current_timestamp z SQLite Zasadniczo mówi, że stosuję właściwe podejście. Moje pytania to:
Gdzie powinienem umieścićdb.execSQL("CREATE TRIGGER...")
komunikat? Przed lub po utworzeniu tabel?Czy mogę użyć tego samego wyzwalacza dla każdej tabeli w mojej bazie danych? tj. czy wyzwalacz może automatycznie wykryć, która tabela i wiersz jest aktualizowany / wstawiany / zastępowany / itd. i powiadom, aby ustawić ten rząd ”last_modified
„pole, czy muszę utworzyć oddzielny wyzwalacz dla każdej tabeli?Ponieważ jestem całkiem nowy w operacjach bazodanowych, czy mógłbyś podać przykładową instrukcję wyzwalacza systemu Android, która wykonuje powyższe zachowanie lub dostarcza zasób przykładowi?Lub jeśli wyzwalacze to zły pomysł, czy są jakieś lepsze alternatywy?
Dziękuję Ci.