![]() |
Correcion De Datos Basado En Una Tabla Anterior
Gracias por la colaboracion.
Tengo una base de datos en Interbase 7.5, dentro de la base entre otras tengo una tabla que se llama facturas, dentro de las facturas tengo las facturas tengo el tipo (tipo) que toman el valor F1, si son de contado y F4 si son de credito, el vendedor(Vend), la fecha (Fecha)y el numero (Bath) entre otros. Tengo una tabla que se llama clientes, que entre otros campos tiene NIT (Nit, Nombre del cliente (nombre), Vendedor (Vend). Cometi un error y reemplaze el vendedor en las facturas tipo F1, cuando solo debia ser en las de tipo F4. Tengo un backup de la base de datos, de una hora antes de hacer el cambio. Me podrian indicar si se puede tomar la tabla FACTURAS del backup, colocarla en la base de datos actual como tabla facturas1 y luego con un SQL, decirle que le coloque el vendedor de la tabla facturas1 en la tabla FACTURAS, para todos las F1 cuyo numero en Facturas sea igual al numero en Facturas1. Uso la herramienta SQL explores y he usado alguna vez IBPUMP, se podria con esta herramientas o cual seria laoptima. Gracias |
Hola Alvaro.
Pareciera más simple restaurar el backup y rehacer la modificación, contemplando en la sentencia SQL que el tipo de factura sea igual a F4. Saludos. |
Gracias
Despues del Backup se han realizado documentos en muchas otras tablas y se tendria que involucrar a mas personal para volver a colocar los documentos nuevos, ademas de que se tendria que detener la operacion para restaurar y hacer la actualizacion. Alvaro Rubio |
Entiendo.
Firebird permite restaurar a una nueva base de datos, pero desconozco si Interbase tiene esa posibilidad. Si fuera así, creo que una alternativa sería sobreescribir la tabla errónea tomando los datos desde la recuperada. Saludos. |
Cita:
Puedes usar programas como ibpump para pasar los datos de una bd a otra, aunque siempre tendrán que parar de trabajar, obligatoriamente. |
Puedes generar un script update con los datos de la base backup:
Este select debería devolverte muchas lineas que puedes exportar a un fichero de texto y ejecutarlo en la base en la que has cometido el error. Ten en cuenta que quizás debas desactivar algunos triggers:
|
La franja horaria es GMT +2. Ahora son las 12:23:09. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi