Обновление RowSet, если содержимое таблицы изменилось? - PullRequest
2 голосов
/ 15 февраля 2010

Можно ли обновить / обновить RowSet в случае изменения содержимого таблицы (например, его изменяет другое приложение)? Таким образом, у меня «всегда» обновленная версия таблицы.

Я посмотрел на RowSetListener, но эти события, похоже, вызываются, только если я изменяю RowSet напрямую. Было бы достаточно знать, что произошли изменения, я знаю ... это много :)

Пожалуйста, поделитесь своими мыслями! Заранее спасибо! Daniel

Ответы [ 2 ]

1 голос
/ 15 февраля 2010

Нет, для большинства традиционных РСУБД нет никакого способа. Просто из-за http://en.wikipedia.org/wiki/ACID#Isolation

0 голосов
/ 17 июня 2011

Да, RowSet может быть обновлен. Просто снова вызовите его метод execute ().

По документам :

Если этот метод успешен, текущее содержимое набора строк отбрасывается, и метаданные набора строк также (повторно) устанавливаются.

A rowSetChanged Событие запускается при этом обновлении.

Если вы спрашиваете, может ли RowSet автоматически обновляться при изменении данных на сервере базы данных, я не знаю, как это возможно. Возможно, вы не захотите знать о таких изменениях в зависимости от уровня изоляции, блокировки и стратегии MVCC.

...