PDA

Ver la Versión Completa : Eventos base de datos


johurgi
06-03-2007, 20:24:33
Hola a todos de nuevo,

Mi duda es la siguiente, tengo una base de datos en oracle, la cual es accedida por varios terminales a la vez(Mi aplicacion).Alguien sabe si oracle tiene la funcionalidad de que, cuando en una tabla se han modificado datos avise a las terminales que estan conectadas a la misma base de datos de que esos datos han sido modificados i se refresquen en el terminal automaticamente los datos.

Gracias de antemano.

Lepe
06-03-2007, 21:48:57
Aqui (http://www.dbmsmag.com/9707d17.html)hay info en inglés.

busqué por "post_event" y salió eso, aqui tienes un link en español https://listas.hispalinux.es/pipermail/l-unplug/2005-April/005642.html

Saludos

johurgi
07-03-2007, 11:51:17
Gracias por tu respuesta mirare lo del paquete DBMS_ALERT.

johurgi
08-03-2007, 12:56:04
Hola Lepe,

he estado mirando el paquete de oracle que realiza esta funcion (dbms_alert)y es eso justamente lo que buscaba. Solo un pequeño matiz, como podria llevar a cabo esta funcion en .net. Para que .net reciba el mensaje que le envia oracle.

Gracias de antemano otra vez.

Lepe
08-03-2007, 14:15:24
No conozco oracle y menos aún ese paquete.

La filosofía es la siguiente:

En la base de datos, en algun trigger incluyes algo así:

post_event 'Nuevo_cliente'

(adaptándolo según la nomenclatura de Oracle)

Oracle envía ese "mensaje" a todos los programas clientes que hace uso de la base de datos, que previamente hayan registrado ese evento.

Al parecer en Oracle debes usar estos 2 procedimientos en tu aplicación para registrar un mensaje y quitar ese registro:

DBMS_ALERT.REGISTER procedure. The name of the alert is the IN parameter. The application can deregister from an event by calling the DBMS_ALERT.REMOVE procedure

Más allá de eso no sabría decirte.

Saludos