none
Conocer Si una BD de ACCESS cambia, como si fuera un evento RRS feed

  • Pregunta

  • Hola.

    Tengo un problema algo interesante de resolver.

    Mediante código necesito saber si una BD cambia y al momento de que cambie ir a recuperar el último elemento.

    El problema no es recuperar el último elemento, eso lo podría saber con una consulta como la siguiente.

    "Select top 1 id from record order by id desc"

    El verdadero problema radica en que esa BD no es alimentada por el programa en el cual necesito recuperar ese último registro. Si no que es un programa comercial que va alimentando la BD y yo para otros fines necesito recuperar el último registro al momento que este es insertado.

    He estado pensando en como conocerlo y una sería estar consultando la BD cada segundo, pero no creo que sea lo más limpio.

    Bueno de ante mano muchas gracias.

    • Cambiado Enrique M. Montejo domingo, 15 de julio de 2012 13:45 acceso a datos (De:Lenguaje VB.NET)
    jueves, 12 de julio de 2012 3:25

Todas las respuestas

  • El verdadero problema radica en que esa BD no es alimentada por el programa en el cual necesito recuperar ese último registro. Si no que es un programa comercial que va alimentando la BD y yo para otros fines necesito recuperar el último registro al momento que este es insertado.

    si usarias sql server ti diria que uses SqlDependency pra implementar esto que planteas, ya que esta clase expone exvento que informan si hay cambios en una query

    pero tratandose de access me temo que no se puede, la unica forma de saber el ultimo es con un control timer cada cierto tiempo verificar la tabla y recuperar el ultimo id

    He estado pensando en como conocerlo y una sería estar consultando la BD cada segundo, pero no creo que sea lo más limpio.

    no es lo mas limpio pero es la unica alternativa que deja access

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    jueves, 12 de julio de 2012 6:04
  • Hola:

    No me suena mucho que exista un evento en Access para un cambio de una tabla.

    Aparte del tema timer (cada x segundos), como 'otra idea', podrias probar de capturar cuando cambia el .MDB mediante los eventos FILESYSTEMWATCHER, que se ejecutan cuando se modifica un fichero.

    Dependiendo del trafico del fichero .MDB te puede resultar más o menos útil (controla cualquier modificación del fichero, no de una tabla en concreto), pero quizás te pueda servir.

    Saludos

    • Propuesto como respuesta Focus Media martes, 25 de septiembre de 2012 9:05
    jueves, 12 de julio de 2012 6:58