Существует два разных процесса, разработанных в Java, работающих независимо, Если какой-либо из процессов изменяет таблицу, могу ли я получить какие-либо намеки? По мере изменения таблицы. Моя цель: я хочу, чтобы объект всегда синхронизировался с таблицей в базе данных, если какая-либо модификация происходит в таблице, я хочу изменить объект. Если таблица изменена, я могу получить какие-либо намеки относительно этого? Предоставляет ли база данных такое средство?Изменен способ узнать таблицу
ответ
Нет, база данных не предоставляет эти услуги. Вы должны периодически запрашивать его, чтобы проверить его модификацию. Или используйте решение JMS для отправки уведомлений из одного приложения в другое.
Мы используем SQL Server и запускаем определенные триггеры, которые срабатывают при изменении таблицы и вызывают внешний двоичный файл. Двоичный вызов, который мы вызываем, отправляет сообщение с сообщением Tib, чтобы уведомить другие приложения о том, что таблица была обновлена.
Тем не менее, я не являюсь большим поклонником этого решения. Намного лучше контролировать запись в таблицу через один процесс «хранителя» и передавать другие приложения. Чтобы обеспечить соблюдение этого правила, вы можете изменять разрешения в своей таблице, чтобы только ваш процесс хранения мог записывать в базу данных.
Другим преимуществом этого подхода является возможность обеспечить уровень кэширования в рамках вашего процесса хранения для удовлетворения общих шаблонов доступа. Конечно, СУБД выполняет кэширование в любом случае, но, предлагая его на уровне приложения, у вас будет больше контроля/видимости над ним.
- Вы можете добавить столбец временной метки (last_modified) в таблицы и периодически проверять его на наличие обновлений или порядковых номеров (которые увеличиваются на обновлениях, аналогичных концепции для оптимистической блокировки).
- Вы можете использовать jboss cache, который предоставляет механизмы обновления.
Вы должны создать отдельную таблицу для отслеживания изменений - столбцы внутри самой таблицы не могут отслеживать, было ли удаление – Joe
Один из способов, вы можете сделать это: Просто приложите ваше заявление базы данных в методе, который должен возвращать 'true'
когда успешно выполнена. Поддерживайте область действия флага в вашем коде, чтобы всякий раз, когда вы хотите проверить, была ли эта таблица изменена или нет. Почему бы вам не попробовать?
Если вы готовы взломать подход, и ваша база данных хранит таблицы в виде файлов (например, mySQL), вы всегда можете найти что-то, что может проверить время модификации файлов на диске и посмотреть, он изменился.
Конечно, базы данных, такие как Oracle, где таблицы назначаются табличным пространствам, а табличные пространства - это хранилище на диске, это не сработает.
(да, я знаю, что это плохой подход, вот почему я сказал, что это взломать, - но мы не знаем всех требований, и если ему нужно что-то быстро, без повторной записи всего приложения, это технически будет работать для некоторых баз данных)
- 1. Каков наилучший способ узнать, когда был изменен документ MongoDB?
- 2. Есть ли способ узнать, не был ли изменен PHP-скрипт?
- 3. Самый простой способ узнать, был ли объект изменен после сохранения?
- 4. есть ли способ узнать, был ли файл изменен?
- 5. Обновить таблицу, если источник изменен
- 6. Как узнать, был ли изменен PHASset?
- 7. Как узнать, был ли файл изменен?
- 8. Как узнать, был ли изменен файл
- 9. Как узнать, когда статус объекта изменен?
- 10. Как узнать обновленную таблицу TriggerContext?
- 11. Как узнать, когда в Oracle был изменен столбец?
- 12. Как узнать, какой JTextField изменен в наборе полей
- 13. Как узнать, добавлен ли контакт, изменен или удален в android
- 14. Как узнать, был ли изменен экземпляр модели django?
- 15. Могу ли я узнать, какой файл изменен с помощью fsevent?
- 16. Как заставить tableViewController узнать о том, что managedObjectContext изменен вне?
- 17. Как узнать, когда был изменен принтер по умолчанию?
- 18. Альтернатива setInterval, чтобы узнать, был ли файл изменен?
- 19. Как узнать «способ ABAP»?
- 20. Лучший способ узнать MySql
- 21. Лучший способ узнать MapReduce
- 22. Лучший способ узнать PHP
- 23. лучший способ узнать тип
- 24. Лучший способ узнать Ajax
- 25. Как узнать, изменен ли список <Object> или элемент изменен?
- 26. Изменен стандартный способ определения значений формы?
- 27. Способ проверки, изменен ли html в ReactJS
- 28. Как узнать, какой пакет/процедура обновляет таблицу?
- 29. Как узнать, когда был изменен текст редактируемого JComboBox?
- 30. Как узнать, что профиль изменен на режим вибрации в ежевике?
Что вы подразумеваете под «изменением»? Вы говорите о том, что фактическое определение таблицы изменяется с помощью DDL (alter table) или только данные строки, которые изменяются с помощью DML (insert/update/delete)? –