Ver Mensaje Individual
  #1  
Antiguo 09-09-2004
jourdan jourdan is offline
Miembro
 
Registrado: may 2003
Ubicación: Mexico
Posts: 151
Reputación: 22
jourdan Va por buen camino
Problema al restaurar base de datos

Hola Grupo, ojala alguien me pueda ayudar, tengo una aplicacion en la
cual como toque final al cerrarla quiero que haga un backup y un restore de la base de datos para quitar toda la basura que genera ya que uso
commitretaining para que no cierre los datasets, todo marcha bien en
las pruebas pero ya en la practica me sale el siguiente error al
correr el codigo del restore:

*****
Project tintorerias.exe raised exception class EIBInterBaseError with
message 'lock time-out on wait transaction
object C:\TINTORERIA_BASEDATOS\TINTORERIA_LOCAL.GDB is in use
could not drop database C:\tintoreria_basedatos\TINTORERIA_LOCAL.GDB
(database might be in use)'. Process stopped. Use Step or Run to
continue.
*****

Me imagino que es porque queda algo abierto en la base de datos y piensa que se pueden coorromper los datos, pero
antes de hacer esto segun yo cierro la base de datos y la transaccion
con las siguientes instrucciones:

DM_ServidorDatos.IB_TR_Tintoreria.Commit;
DM_ServidorDatos.IB_TR_Tintoreria.Active := false;
DM_ServidorDatos.IB_DB_Tintoreria.CloseDataSets;
DM_ServidorDatos.IB_DB_Tintoreria.Connected := false;

Es raro poruqe aveces funciona bien y a veces no funciona y marca el
arror arriba señalado

Lei algo en internet de que hay que tener acceso exclusivo a la base de datos pero no se como hacer esto, nunca encontre esta referencia "chapter 14, Getting exclusive access to a database, of Using Firebird"

Auxilio

Saludos y gracias

AJ
__________________
Alejandro Jourdan
Responder Con Cita