| ID | Asunto | Fecha | Nick | |
| 56145 | error en tiempo de ejecucion No se puede abrir la base de datos solicitada en el inicio de sesion | 25/01/12 18:06 | elpey | |  |
un saludo muy cordial
estoy aprendiendo a programar vb net pero tengo el siguiente problema.
No se puede abrir la base de datos solicitada en el inicio de sesión 'D:\Desarrollo_2012\CTB_NEW\BASES\CTB_55.mdf'. Error de inicio de sesión. Error de inicio de sesión del usuario 'MDesa\Administrador'.
esto se presenta cuando creo una base de datos e inmediatamente trato de recuperar un archivo de respaldo q tengo de sql server 2000 y no tengo la menor idea de como resolverlo
les agradecere mucho su ayuda.
este proceso crea la base de datos Dim myConn As SqlConnection = New SqlConnection("Server=" & SERVIDOR & ";Database=master;Trusted_Connection=True;") Dim Str As String Try Ruta_Base = Trim(TXTRUTABASE_CTB.Text) If CBOCOD.Text = "00" Then Exit Sub End If Str = "CREATE DATABASE " & Trim(TXTBASE.Text) & " ON PRIMARY (NAME = " & Trim(TXTBASE.Text) & "_Data, FILENAME = '" & Ruta_Base & "\" & Trim(TXTBASE.Text) & ".mdf') LOG ON (NAME = " & Trim(TXTBASE.Text) & "_Log, FILENAME = '" & Ruta_Base & "\" & Trim(TXTBASE.Text) & "_log.ldf')" Dim myCommand As SqlCommand = New SqlCommand(Str, myConn) If Dir(Ruta_Base & Trim(TXTBASE.Text) & ".MDF") = "" Then myConn.Open() myCommand.ExecuteNonQuery() myConn.Close() Call RESTAURAR_BASE() MessageBox.Show("BASE DE DATOS CREADA CORRECTAMENTE", "Información", MessageBoxButtons.OK, MessageBoxIcon.Information) Else MessageBox.Show("YA EXISTE LA BASE DE DATOS PARA LA EMPRESA " & CBOCOD.Text & " ", "Información", MessageBoxButtons.OK, MessageBoxIcon.Information) Exit Sub End If Catch ex As Exception MessageBox.Show(ex.ToString()) Finally If (myConn.State = ConnectionState.Open) Then myConn.Close() End If End Try
y este es el procedimiento con el cual intento recuperar el respaldo y es aqui donde se presenta el error Private Sub RESTAURAR_BASE() Dim labase As String = Ruta_Base & "CTB_" & CBOCOD.Text & ".mdf" Dim rbackup As String rbackup = Ruta_Base + "CTB_100RES.bak" Dim sBackup As String = "RESTORE DATABASE " & labase & _ " FROM DISK = '" & rbackup & "'" & _ " WITH REPLACE" Dim csb As New SqlConnectionStringBuilder Stop csb.DataSource = cboInstancias.Text csb.InitialCatalog = labase csb.IntegratedSecurity = True Using con As New SqlConnection(csb.ConnectionString) Dim cmdBackUp As New SqlCommand(sBackup, con) Try If Dir(rbackup) = "" Then con.Open() cmdBackUp.ExecuteNonQuery() MessageBox.Show("Se ha restaurado la copia de la base de datos.", "Restaurar base de datos", MessageBoxButtons.OK, MessageBoxIcon.Information) con.Close() Else MessageBox.Show("LA BASE DE RESPALDO NO SE ENCUENTRA EN LA TURA " & Ruta_Base & " ", "Restaurar base de datos", MessageBoxButtons.OK, MessageBoxIcon.Information) End If Catch ex As Exception MessageBox.Show(ex.Message, "Error al restaurar la base de datos", MessageBoxButtons.OK, MessageBoxIcon.Error) End Try End Using End Sub
EL PEY
|