solucione el tema de las conexiones abiertas poniendo pooling=false, el problema que tengo ahora es que si hago restore una vez funciona todo, pero como haga otro restore inmediatamente me da este error:
No se puede abrir la base de datos predeterminada del usuario. Error de inicio de sesión.
lo mas raro es que si vuelvo a hacer un restore pues vuelve a funcionar, y si hago otro vuelve a fallar, asi en un bucle
el conectionstring para conectarme a la BD D:\Prueba\APP_DATA\DATOS.MDF y hacer el backup es
Data Source=.\SQLEXPRESS;pooling=false;AttachDbFilename =|DataDirectory|\Datos.mdf;Integrated Security=True;User Instance=True
el conectionstring para conectarme a la BD master y hacer el restore es
Data Source=PC\SQLEXPRESS;Initial Catalog=master;Integrated Security=True
alguna idea?
Cita:
Iniciado por iislas No puedes hacer un RESTORE de una base de datos que esta en uso, para sacar a todos tus usuarios de forma automatica.
ALTER DATABASE tubase SET SINGLE_USER WITH ROLLBACK IMMEDIATE
si ejecuto eso desde la BD master antes de hacer el restore y sin usar pooling=false sigue dandome el error:
El sistema operativo devolvió el error '32(El proceso no tiene acceso al archivo porque está siendo utilizado por otro proceso.)' al intentar RestoreContainer::ValidateTargetForCreation' en 'D:\Prueba\APP_DATA\Datos.mdf'. El archivo 'Datos' no se puede restaurar en 'D:\Prueba\APP_DATA\Datos.mdf'. Utilice WITH MOVE para identificar una ubicación válida para el archivo. El sistema operativo devolvió el error '32(El proceso no tiene acceso al archivo porque está siendo utilizado por otro proceso.)' al intentar RestoreContainer::ValidateTargetForCreation' en 'D:\Prueba\APP_DATA\Datos_log.ldf'. El archivo 'Datos_log' no se puede restaurar en 'D:\Prueba\APP_DATA\Datos_log.ldf'. Utilice WITH MOVE para identificar una ubicación válida para el archivo. Se identificaron problemas al planear la instrucción RESTORE. Los mensajes anteriores proporcionan detalles. Fin anómalo de RESTORE DATABASE.
EDITO: no respondais a este post ya que instale el sql server express y ya no tengo estos errores, por eso abro uno nuevo. Saludos ;)