Ver Mensaje Individual
  #6 (permalink)  
Antiguo 19/01/2007, 07:32
Avatar de SuperPinwi
SuperPinwi
 
Fecha de Ingreso: septiembre-2005
Mensajes: 317
Antigüedad: 19 años, 5 meses
Puntos: 1
Re: Copiar una base de datos en otra

weno al final lo q he hecho ha sido crear un datatable, dos conexiones y dos métodos. Con uno de los métodos meto en el datatable la base de datos que quiero copiar entera. Esto me lo hace bien.

con el otro método lo que quiero hacer es ir actualizando fila a fila las columnas q me interesen, pero me da el error:

"no se puede actualizar no se han especificado valores para algunos de los parámetros requeridos"

este es el código del método que me falla

Código:
    Public Shared Sub actualizaBD1()
        'Objeto de comando que permite la manipulación de la base de datos
        Dim objAcciones1 As New OleDbCommand
        'tabla de datos utilizada por este método
        Dim dtBD1 As DataTable
        'Objeto adaptador
        Dim objAdaptador
        'Objeto que permite actualizar la base de datos
        Dim OleDbUpdateCommand As OleDbCommand = New OleDbCommand
        'Variable de bucle
        Dim i As Integer
        'Para manejar las filas de la base de datos
        Dim fila As Integer
        'Para conocer el número de filas
        Dim n As Integer
        Dim n2 As Integer
        'Cadenas temporales para las variables de la base de datos
        Dim sDescripcion As String
        Dim sValor As String
        Dim sVisibilidadLabel As String
        Dim sVisibilidadTA As String
        Dim sID As String
        Dim sTexto As String
        Dim sVisible As Boolean
        Dim sTamanno As String
        Dim eti As String

        If File.Exists(ruta) Then
            Try
                ObjCactualizaBD1.Open()
                objAdaptador = New OleDbDataAdapter("SELECT * FROM Etiquetas ORDER BY ID", ObjCactualizaBD1)
                objAcciones1.Connection() = ObjCactualizaBD1
                OleDbUpdateCommand.Connection = ObjCactualizaBD1
                dtBD1 = New DataTable
                objAdaptador.fill(dtBD1)
                n = dtBD1.Rows.Count
                n2 = dtBD2.Rows.Count
                MessageBox.Show(dtBD2.Rows(0)("valor").ToString) -- con esta línea sólo compruebo que el datatable tiene datos efectivamente
                If n = 0 Then
                    MessageBox.Show("No se ha encontrado ningún registro que coincida con la selección", "Aviso")
                Else
                    'Actualiza la línea de la base de datos asociada al campo de texto

                    While fila <= n
                        For i = 0 To i = n2

                            sID = dtBD2.Rows(fila)("ID").ToString

                            sDescripcion = dtBD2.Rows(fila)("descripcion").ToString

                            OleDbUpdateCommand.CommandText = "UPDATE Propiedades " & "SET descripcion = " & sDescripcion & " WHERE ID = " & sID
                            OleDbUpdateCommand.ExecuteNonQuery()
Next
                    End While
                End If
            Catch ex As Exception
                MessageBox.Show(Err.Description, "Aviso")
            Finally
                ObjCactualizaBD1.Close()
            End Try
        Else
            MessageBox.Show("No hay una base de datos cargada en este momento, por favor cargue una y vuelva a intentarlo", "Aviso")
        End If
    End Sub
weno a ver si veis algo raro a mi me duele la cabeza ya de darle vueltas jejejeje

saludines y a disfrutar del finde!!! Besis