Я пишу приложение Qt, где разные модели могут вставлять / удалять / обновлять одну и ту же таблицу. Когда одна модель изменяет базу данных, я хотел бы, чтобы другие модели были уведомлены об изменении, чтобы они могли соответствующим образом обновить свои представления.
Похоже, что лучший способ отслеживать вставки, удаления и обновления в SQLite - это использовать QSqlDriver::subscribeToNotification
, а затем реагировать на сигнал уведомления. Я знаю, что синтаксис выглядит следующим образом:
db.driver()->subscribeToNotification("anEventId");
Однако я не уверен, что означает anEventId
. Является ли anEventId
константой, предоставляемой SQLite, или я кодирую эти конкретные события в SQLite, используя триггеры или что-то еще, а затем подписываюсь на них?