Volcar un dataset en una base de datos con ADO.NET

WebProgramacion > Recursos sobre informática y tecnología > Programacion > VB.NET > Volcar un dataset en una base de datos con ADO.NET
Autor: Dámaso Velázquez Álvarez

Vamos a realizar un volcado de un dataset "a mano" en una base de datos, mediante instrucciones tipo INSERT, a través de un objeto de la clase OleDbCommand. Se va a realizar sobre una base de datos Access.

Supongamos un dataset que tiene una sola tabla (la tabla 0) y en ella hay dos campos, nombre y apellidos. La tabla en la base de datos, se llamará PERSONAS.

Vamos a realizar la inserción de la siguiente manera:

Debemos añadir la siguiente línea al principio de nuestro código:

Imports System.Data.OleDb

Posteriormente prepararemos el comando de alta para no tener que crearlo en cada iteración, y así en cada repetición sólo tendremos que darle valores a sus parámetros y ejecutarlo.

'Declaraciones
Dim cmAlta As OleDbCommand
Dim i As Integer
Dim cn as OleDbConnection

'Construimos y abrimos la conexión con la base de datos
cn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=ruta_del_fichero_de_access;User Id=admin;Password=;");
cn.open()

'Preparamos el comando
cmAlta = New OleDbCommand("INSERT INTO personas(nombre,apellidos) VALUES(@nombre,@apellidos)")
cmAlta.Parameters.Add("@nombre", OleDbType.VarChar)
cmAlta.Parameters.Add("@apellidos", OleDbType.VarChar)
cmAlta.Connection = cn   
For i = 0 To dsPersonas.Tables(0).Rows.Count - 1
   'rellenamos el valor de los parámetros
   cmAlta.Parameters("@nombre").Value = dsPersonas.Tables(0).Rows(i)("nombre").ToString()
   cmAlta.Parameters("@apellidos").Value = dsPersonas.Tables(0).Rows(i)("apellidos").ToString()
   'realizamos el alta
   cmAlta.ExecuteNonQuery()
Next

'Cerramos la conexion con la base de datos
cn.close()

Podría interesarte...

Rellenar un dataset con una consulta SQL
Rutina para rellenar un dataset con una consulta SQL procedente de una base de datos MySQL con ADO.NET
Rellenar un dataset con una consulta SQL y volcarlo a un DataGridView
Rutina para rellenar un dataset con una consulta SQL procedente de una base de datos MySQL con ADO.NET
Rellenar un dataset con una consulta SQL
Rutina para rellenar un dataset con una consulta SQL procedente de una base de datos MySQL con ADO.NET