CLR: .Net / Mono / Boo / Otros CLR > VB .NET

 Migrando Codigo De Vb6 A Vb.net

(1/1)

   :
Buenas noches.

Desearía conocer (si es muy amable) el que me indicara la sintaxis con respecto a migrar código VB6 a VB.NET con respecto a Bases de Datos mdb.  Al igual que la referencia para la misma.


--- Código: Text --- Dim BD As DatabaseDim Rs As Recordset  

--- Código: Text --- Set BD = OpenDatabase(App.Path + \BaseDatos.mdb")Set Rs = BD.OpenRecordset(sentencia sql)  

--- Código: Text --- 'Almacenar:Rs.AddNewRs!Campo = TextBox1Rs.UpdateMsgBox "Almacenado"  

--- Código: Text --- 'Consulta:Rs.MoveFirstWhile Not Rs.EOF    If TextBox = Rs!Campo Then       TextBox = Rs!Campo       Exit Sub    End If    Rs.MoveNextWendMsgBox "No Encontrado"  

--- Código: Text --- 'Actualizacion:Rs.MoveFirstWhile Not Rs.EOF   If TextBox = Rs!Campo Then      If MsgBox("¿Actualizar?, vbYesNo, "Confirma") = vbNo Then         Exit Sub      Else         Rs.Edit         Rs!Campo = TextBox         Rs.Update         MsgBox("Actualizado")         Exit Sub      End If   End If   Rs.MoveNextWendMsgBox "No Encontrado"  


--- Código: Text --- 'Suprimir:Rs.MoveFirstWhile Not Rs.EOF   If TextBox = Rs!Campo Then      If MsgBox("¿Borrar?, vbYesNo, "Confirma") = vbNo Then         Exit Sub      Else         TextBox = ""         MsgBox("Borrado")         Exit Sub      End If   End If   Rs.MoveNextWendMsgBox "No Encontrado"  
Aunque esta codificación es de DAO, se entiende que en Visual Studio .NET los asistentes y el entorno de la plataforma .NET ya no admiten DAO (aunque las clases DAO están incluidas y todavía se pueden utilizar) como objetos COM con respecto a aplicaciones de VB6 que utilicen DAO y Microsoft recomiendo mejor el uso de Plantillas  OLE DB y ODBC para los proyectos nuevos.  La codificación de ADO que he manejado se parece mucho al perfil de DAO a diferencia de la forma como se declara la conexión.  El objeto de esto, es encontrar una forma de codificar lo más parecida posible a este perfil, pero orientado a la nueva escritura del ADO .NET

Muchas Gracias.

   :
Buenas noches,

Me comunico con ustedes en la ayuda de poder corregir un error que evita que no pueda almacenarse la información del DataSet a la base de datos, siguiendo con la migración de VB6 a VB.NET.
La escritura está dirigida a una base de datos Access con codificación OleDb:


--- Código: Text --- Dim conex As New OleDbConnection  conex.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & _ "C:\Carpeta\BaseDatos.mdb"conex.Open()Dim SQL As String = "sentencia sql"Dim Adaptador As OleDbDataAdapter = New OleDbDataAdapter(SQL, conex)Dim Datos As DataSet = New DataSet 'Cargando de datos al DataSet:Adaptador.Fill(Datos, "Tabla") 'Guardando en la Tabla el contenido del DataSet:Dim Tabla As DataTable = Datos.Tables("Tabla")'Creando Fila:Dim Fila As DataRow = Tabla.NewRow 'Colocando los datos en la fila:Fila("Campo1") = TextCampo1.TextFila("Campo2") = TextCampo2.TextFila("Campo3") = TextCampo3.TextFila("Campo4") = TextCampo4.Text 'Guardando la Fila en la Tabla:Tabla.Rows.Add(Fila) 'Ejecutando comando Builder:Dim Comando As OleDb.OleDbCommandBuilder = New OleDb.OleDbCommandBuilder(Adaptador)Try     'Usando el método Update para actualizar la base de datos con el contenido     'del DataSet:     Adaptador.Update(Datos, "Tabla")Catch eUpdate As System.Exception     System.Windows.Forms.MessageBox.Show(eUpdate.Message)End Try  
La codificación del DataReader funciona perfectamente realizando consulta de los registros alojados en la base de datos (datos ingresados directamente en Access).


--- Citar ---Error:
El error sucede en la última línea: Adaptador.Update(Datos, "Tabla")
Fue ingresado en un Try-End Try para obtener un mensaje de error del siguiente tipo:  "Error de sintaxis en INSERT INTO"

¿a qué podría ser debido este problema?

--- Fin de la cita ---

Muchas gracias.
un Saludo.

Navegación

[0] Índice de Mensajes

Ir a la versión completa