lunes, septiembre 24, 2007

Flashback Queries

Una característica muy interesante disponible en Oracle son los llamados "flashback querys". Este "feature" disponible en Oracle a partir de la versión 9i permite que uno consulte los registros de una tabla tal como estaban en el pasado, bien sea para un timestamp o para una "versión" del registro.

Referencia: http://download.oracle.com/docs/cd/B14117_01/appdev.101/b10795/adfns_fl.htm

Para que los flashback querys funcionen, es necesario configurar algunas cosas en la base de datos:

1) La base de datos necesita un undo tablespace. El undo tablespace es equivalente al transaction log de MS SQL Server, un espacio de almacenamiento que guarda cada cambio hecho en cada registro de la base de datos.

2) Configurar la base de datos para manejar automáticamente el undo log y mantener la información del log tanto tiempo como sea posible (o lo que es lo mismo, hasta que sea inevitable sobreescribirla).

3) Otorgar ciertos privilegios a los usuarios que van a realizar los flashback queries, entre ellos:

a) Execute sobre el package DBMS_FLASHBACK:

GRANT EXECUTE ON DBMS_FLASHBACK TO ARDILLA;


b) Select y Flashback sobre las tablas que se van a consultar:

GRANT EXECUTE, FLASHBACK ON PROFESOR TO ARDILLA;


También es posible otorgar permiso de hacer flashback sobre cualquier tabla a un usuario:

GRANT FLASHBACK ANY TABLE TO ARDILLA;


c) Permisos sobre las transacciones:

GRANT SELECT ANY TRANSACTION TO ARDILLA;



Una vez cumplidos estos requisitos, podemos lanzar nuestro query:

SELECT *
FROM PROFESOR
AS OF TIMESTAMP TO_TIMESTAMP('25/09/2007 13:51:00', 'DD/MM/YYYY HH24:MI:SS')


Más adelante comentaré sobre la otra forma de usar los flashback queries, que se vasa en el número de versión del registro.

4 comentarios:

Anónimo dijo...

die sehr nГјtzliche Mitteilung cialis bestellen viagra preis [url=http//t7-isis.org]levitra kaufen[/url]

Anónimo dijo...

Es evidente os habГ©is equivocado... http://nuevascarreras.com/cialis/ cialis precios Siamo spiacenti, vorrei proporre un'altra soluzione. [url=http://nuevascarreras.com/cialis/ ]cialis precio argentina [/url]

Anónimo dijo...

Exactamente! Me gusta su pensamiento. Invito a fijar el tema. [url=http://csalamanca.com/tag/sin-receta/ ]comprar viagra es [/url] Hablaremos. http://csalamanca.com/tag/sin-receta/ viagra sin receta

Anónimo dijo...

el mensaje Excelente, felicito))))) [url=http://csalamanca.com/category/viagra/ ]comprar viagra generico [/url] SГ­ usted el cuentista http://csalamanca.com/category/viagra/ viagra 100 mg pfizer