problemas para hacerun restore de una base SQL desde .NET

06/12/2005 - 20:01 por diegoma02 | Informe spam
Ando teniendo problemas desde una aplicacion de B.NET que desarrolle al momento de querer hacer un restore
El backup de la base de datos lo realizo perfecto, pero si intento realizar el restore, me tire error
Les paso el codigo utilizado para ver si pueden darme una mano con esto
/*******
' para el backu

BACKUP DATABASE MARCON TO DISK = 'C:\Documents and Settingsaud\Escritorio\pepe\Bak_Marcon-06-12-2005.bak

' para el restor

RESTORE DATABASE MARCON_2 FROM DISK = 'C:\Documents and Settingsaud\Escritorio\pepe\Bak_Marcon-06-12-2005.bak', MOVE() 'MARCON_log' TO 'C:\marcon2_Log.ldf

esto me tira un error cerca del " )

y si lo escrivo de esta forma

RESTORE DATABASE MARCON_2 FROM DISK = 'C:\Documents and Settingsaud\Escritorio\pepe\Bak_Marcon-06-12-2005.bak

me dice queno puede realizar el restore, porque el MARCON_log esta siendo usado

Muchas gracia

diegoma02

Ver este tema: http://www.softwaremix.net/viewtopic-462798.htm

Enviado desde http://www.softwaremix.net
 

Leer las respuestas

#1 A.Poblacion
06/12/2005 - 21:26 | Informe spam
"diegoma02" wrote in message
news:

Ando teniendo problemas desde una aplicacion de B.NET que desarrolle al


momento de querer hacer un restore.
El backup de la base de datos lo realizo perfecto, pero si intento


realizar el restore, me tire error.
Les paso el codigo utilizado para ver si pueden darme una mano con esto.
/********
' para el backup

BACKUP DATABASE MARCON TO DISK = 'C:\Documents and


Settingsaud\Escritorio\pepe\Bak_Marcon-06-12-2005.bak'

' para el restore

RESTORE DATABASE MARCON_2 FROM DISK = 'C:\Documents and


Settingsaud\Escritorio\pepe\Bak_Marcon-06-12-2005.bak', MOVE()
'MARCON_log' TO 'C:\marcon2_Log.ldf'

esto me tira un error cerca del " ) "

y si lo escrivo de esta forma:

RESTORE DATABASE MARCON_2 FROM DISK = 'C:\Documents and


Settingsaud\Escritorio\pepe\Bak_Marcon-06-12-2005.bak'

me dice queno puede realizar el restore, porque el MARCON_log esta siendo


usado.

a) Lo del MOVE: No debe llevar paréntesis: RESTORE ... MOVE 'origen' TO
'destino'

b) Lo de que está en uso: Seguramente es porque antes de hacer el restore
has abierto una conexión a la base de datos. Aunque le hagas un Close(), la
conexión no se cierra de verdad, sino que se devuelve al pool de conexiones
y queda abierta a la espera de que se le vuelva a hacer otro Open, en cuyo
caso no se abre una nueva conexión sino que se devuelve desde el pool la que
ya estaba abierta. El problema es que mientras está en el pool, el servidor
de base de datos ve la conexión como abierta, y por lo tanto considera "en
uso" la base de datos y no deja hacer un restore.

Preguntas similares