Hola! Te recomiendo que lleves el peso a la base de datos. Podrìas..
1) Generarte un SPs que te cree las tablas de auditorio / control de cambios para cada tabla y sus respectivos triggers. Podemos discutir que no es bueno el uso de triggers, que estoy de acuerdo, pero esta vos hcer el control manual...El tema de un SP que te cree los Sps / triggers, es para evitar cambiar todo a mano cuando haces una alteración de un campo de una tabla. Busca en la red por auditoria y/o control de cambios, que tenés scrpts de ejemplos. Tenés que usar un par de tablas de sistemas. syscolumns, sysobjects (si vas contra sql server), si vas contra oracle, también tenés las tablas. En ambos, tenés que tener en cuenta los permisos para esas tablas. 2) ¿Què profundidad de cambios vas a manejar? un solo cambio? ,2? n? Si haces n, vas a tener que tener algún parámetro para definirlo. Vas a tener que mostrar una pantalla al user, para que elija hasta que cambio quiere volver atrás (esto es robado del word, nada original, pegale una mirada). Desde donde el user te seleccione el cambio, vas a tener que aplicarlos a la inversa (cambio más viejo al mas nuevo) 3) BDD: update => manejas los últimos datos en tu tabla y los cambios en la de auiditoria. Al deshacer, aplicando los cambios de atrás hacia adelante, podés volver al registro original insert => mmm...una de las acciones que tienen que considerar los objetos nuevos del punto 1, sería la identificación del insert. Si el usuario lo quiere deshacer, es un simple delete (a menos, obvio, que permitas hacer deshacer del deshacer, si es así suerte!). delete => simple campo en tu tabla original, de activo/inactivo (1/0 como gustes) y la respectiva consideración en tus consultas para que solo tomen los activos. Bueno, es una idea.. espero que te sirva. sld, D.- Claudia Almeda <[EMAIL PROTECTED]> wrote: no es como un deshacer???? Los triggers no te sirven??o entendi mal? El día 12/06/07, Ruben Ferraro <[EMAIL PROTECTED]> escribió: Disculpen la ignorancia, pero que vendria a ser un undo? Gracias Rubén -----Mensaje original----- De: Omar del valle Rodríguez [mailto: [EMAIL PROTECTED] Enviado el: martes, 12 de junio de 2007 16:27 Para: [EMAIL PROTECTED] Asunto: [dbms] Hacer Undo Hola gente.. Se me pidió que implementara un sistema que pudiera realizar Undo sobre las acciones de Delete, Insert o Update en varias Tablas de una Base de datos en SQL. Tienen alguna recomendación que hacer?? Salu2 Omar. --------------------------------- We won't tell. Get more on shows you hate to love (and love to hate): Yahoo! TV's Guilty Pleasures list.
