RE:Observar base de datos
Buenas! No sé si hay algún componente que haga lo que tú buscas. Está la posibilidad de hacer lo contrario, en cuanto actualices los datos en tu programa que se actualizase automáticamente en la BD.
Así que la solución que yo tomaría posiblemente, sería la siguiente:
Me crearía una nueva tabla en la BD, en la que almacenar diversos datos, como opciones de configuración y cosas así. Serían dos columnas x ejemplo, una la descripción del dato y en otra el valor.
Uno de esos valores, sería la última fecha en la que se actualizó la BD.
Una vez hecho eso, solo te quedaría crearte algún tipo de triguer, según tu conveniencia, que cada vez que hubiese un insert, un update o un delete, te actualizase ese campo con la fecha y hora actuales.
Al tener ese dato siempre actualizado, tu aplicación debería comprobar periódicamente (mediante un demonio x ejemplo) la hora de la última actualización, y entonces actualizar los datos.
Para un funcionamiento más preciso y quizás más efectivo, podrias crear una tabla de log, en la que almacenases el tipo de acción llevada a cabo (insert, update o delete), la tabla donde se hizo y la hora. Así sabrías cada movimiento x separado y podrias saber a que tablas dirigirte cuando necesitases actualizar.
Quizás sea una opción más trabajosa de lo que esperabas... pero creo que te solucionaría el problema.
Si lo que tienes es simplemente una tabla en la que muestras datos... lo único que deberías hacer es actualizar esa tabla volviendo a consultar los datos mostrados cada cierto periodo de tiempo que tú mismo estipularías. Así actualizarías los datos a cada minuto, o cada segundo, segun tus necesidades.
Espero que te sirva al menos de orientación o que te inspire alguna idea mejor ; )
Saludos!