Cómo usar Microsoft Visual Basic .

NET para conectar con una base de datos de Microsoft Access y recuperar datos
Este artículo paso a paso describe cómo utilizar Microsoft ADO.NET para abrir una base de datos de Microsoft Access utilizando el proveedor de datos OLE DB. Utilice la clase OleDbDataAdapter para obtener filas de la base de datos de Access e insertarlas en un objeto DataSet. En este artículo se describe cómo agregar filas, cómo eliminarlas y cómo actualizarlas en la base de datos de Access utilizando DataSet y OleDbDataAdapter.

Requisitos
En la lista siguiente se describe el hardware, el software, la infraestructura de red y los Service Pack recomendados que necesitará:

• • •

Microsoft .NET Framework Microsoft Visual Basic .NET Microsoft Access

En el presente artículo se da por supuesto que está familiarizado con los temas siguientes:

• • •

Visual Basic .NET ADO.NET Access:

Crear una base de datos de Microsoft Access
Para crear una base de datos en Microsoft Access y luego crear una tabla en la base de datos, siga estos pasos:

1.

Inicie Access. En el menú Archivo, haga clic en Nuevo. Haga clic en Base de datos en blanco en el panel de tareas. En el cuadro Nombre de archivo, escriba testdb y haga clic en Crear. Haga clic con el botón secundario en Crear una tabla en vista Diseño y, a

2. 3. 4. 5. 6. 7. 8. 9.

continuación, haga clic en Abrir. En el cuadro de texto Nombre del campo, escriba SName. En la lista Tipo de datos, haga clic en Texto. En el cuadro de texto Nombre del campo, escriba SNo. En la lista Tipo de datos, haga clic en Número.

haga clic en 2. En Tipos de proyecto. haga clic en Guardar como. Aceptar. Cierre la base de datostestdb. Escriba 101 en la columna SNo. 4. Haga clic con el botón secundario en SNo y luego en Clave principal. a continuación. Inicie Microsoft Visual Studio . En el Explorador del servidor. 3. Escriba varios registros adicionales en la tabla Alumno y luego cierre la ventana Alumno:Tabla. haga clic en Aplicación para Windows y. escriba Alumno en el cuadro de texto y luego haga clic en Aceptar. 12. haga clic con el botón secundario en Conexiones de datos y luego haga clic en Agregar conexión. De forma predeterminada. 11. haga clic en Proyectos de Visual Basic. Abra una conexión a la base de datos de Access 1. haga clic en Explorador de servidores.10.NET. .NET Server. Escriba XYZ en la columna SName. En el menú Archivo. se crea Form1. En este ejemplo también se describe cómo crear nuevas filas. 1. 14.NET En el siguiente ejemplo paso a paso se describe cómo crear una conexión a la base de datos de Access utilizando el Explorador de Microsoft Visual Studio . 2. 15. Crear una nueva aplicación basada en Windows con Visual Basic . haga clic en la ficha Proveedor. En el ejemplo siguiente también se describe cómo utilizar la clase OleDbDataAdapter para recuperar los datos de la base de datos e insertarlos en un objeto DataSet. cómo modificar los datos de las filas y cómo quitar dichas filas de la tabla de la base de datos de Access. seleccione Nuevo y haga clic en Proyecto. En el cuadro de diálogo Guardar como. 19. Escriba 102 en la columna SNo. cómo agregarlas a la tabla. 17. Haga clic con el botón secundario en la tabla Alumno y luego haga clic en Abrir. En el cuadro de diálogo Propiedades.NET. Escriba ABC en la columna SName. 3. En el menú Archivo. Cierre la vista Diseño. En Plantillas. 13. 18. En el menú Ver. Crear una conexión a la base de datos de Access utilizando Visual Basic . 16.

En el cuadro de diálogo Generar conjunto de datos. 3. En el cuadro de diálogo Propiedades de vínculo de datos. haga clic en el botón (. a continuación. 6. En el panel Generar las instrucciones SQL. 4. En el cuadro de herramientas. haga clic en No incluir contraseña. Arrastre un control OleDbDataAdapter hasta Form1. se crea DataGrid1. haga clic en Siguiente: SELECT * FROM Alumno 5. 6. . Busque el archivo testdb. 2. Seleccione el archivo testdb. a continuación. haga clic en Proveedor de OLE DB Microsoft Jet 4. De forma predeterminada. 7. Nota: En el cuadro de diálogo ¿Desea incluir la contraseña en la cadena de conexión?. 5. 2. a continuación.0 y.. haga clic en Aceptar. haga clic en la ficha Datos. a continuación.mdb de base de datos de Access que creó siguiendo la ruta de acceso correspondiente en su equipo.mdb y luego haga clic en Abrir. haga clic en Aceptar.4.Fill(DataSet11) Mostrar los registros recuperados de la base de datos de Access 1. En el panel Ver resultados del Asistente. haga clic en Siguiente. haga clic en Siguiente tres veces. En el Asistente para la configuración del adaptador de datos. en Propiedades. Recupere los datos de la base de datos de Access utilizando la clase OleDbDataAdapter 1. Haga clic con el botón secundario en OleDbDataAdapter1 y. En la lista Proveedores de OLE DB. 8. a continuación. haga clic en Generar conjunto de datos.. haga clic en Finalizar. ). 7. Haga clic con el botón secundario en DataGrid1 y. Agregue un control DataGrid a Form1. Haga clic en la ficha Conexión y. 8. Agregue el siguiente código al controlador de eventos Form1_Load: 'Fill retrieves rows from the data source by using the SELECT statement OleDbDataAdapter1. escriba la siguiente instrucción de Microsoft SQL Server y.

2.Message) End Try 'Muestra el número de filas actualizadas. En el cuadro de diálogo Propiedades. En el cuadro de diálogo Propiedades.3. se crea Button2. establezca la propiedad Text en Agregar. establezca la propiedad Text en Actualizar.NewRow sno = InputBox("Enter the Roll no of the Student:") sname = InputBox("Enter the Name of the Student:") rw. 4. sno As Integer Dim sname As String Dim rw As DataRow 'Add a new row to the Student table rw = DataSet11. rwno As Integer Dim colname As String Dim value As Object colname = InputBox("Enter the name of the Column to be updated") rwno = InputBox("Enter the Row Number to be updated: Row No starts from 0") value = InputBox("Enter the value to be entered into the Student table") . 3.Tables(0). Agregar una fila a la tabla de la base de datos de Access 1. 2. Agregue un control Button a Form1.Show("número de filas actualizadas=" & i) Actualizar las filas de una tabla en la base de datos de Access 1.Show(ex.Item("SName") = sname Try DataSet11. Agregue un control Button a Form1. De forma predeterminada. 4. Agregue el siguiente código al controlador de eventos Button1_Click: Dim i. En el cuadro de diálogo Propiedades. Haga clic con el botón secundario en Button1 y luego haga clic en Propiedades.Update(DataSet11) Catch ex As Exception MessageBox. Haga clic con el botón secundario en Button2 y luego haga clic en Propiedades. MessageBox. Agregue el siguiente código al controlador de eventos Button2_Click: Dim i.Add(rw) 'Actualice la tabla Alumno en la base de datos testdb i = OleDbDataAdapter1.Tables(0).Rows.Item("SNo") = sno rw. 3. establezca la propiedad DataSource en DataSet11 y la propiedad DataMember en Alumno.

En el menú Depurar. DataSet11. haga clic en Iniciar. MessageBox.Delete() 'Update the Student table in the testdb database.aspx .Update(DataSet11) Catch ex As Exception MsgBox(ex.Message) End Try 'Displays number of rows updated. se crea Button3.71). MessageBox. 5. Haga clic en Eliminar y. visite los siguientes sitios Web de Microsoft Developer Network (MSDN): OleDbDataAdapter Class http://msdn2.Update(DataSet11) Catch ex As Exception MessageBox.Item(colname) = value 'Update the Student table in the testdb database. establezca la propiedad Text en Eliminar.Show(ex. En el cuadro de diálogo Propiedades. escriba los datos en los cuadros de entrada correspondientes para borrar una fila de la tabla Alumno. 3.Rows(rwno). Haga clic con el botón secundario en Button3 y luego haga clic en Propiedades. 2.Show("no of rows updated=" & i) Comprobar que todo funciona 1. 4. 2.data. a continuación. Referencias Para obtener más información. Agregue un control Button a Form1. De forma predeterminada. escriba los datos en el cuadro de entrada para agregar una fila a la tabla Alumno. Haga clic en Agregar y. escriba los datos en los cuadros de entrada para actualizar una columna de la tabla Alumno. a continuación. Agregue el siguiente código al controlador de eventos Button3_Click: Dim i As Integer Dim rno As Integer rno = InputBox("Enter the Row no to be deleted: Row no starts from 0") Try 'Delete a row from the Student table. Nota: Recibe un error si hace clic en Cancelar en los cuadros de entrada.Try 'Update the column in the Student table.Rows(rno). 4. DataSet11.Show("no of rows updated=" & i) Borrar filas de una tabla en la base de datos de Access 1. Haga clic en Actualizar y.Tables(0).microsoft. haga clic en Generar solución.oledbdataadapter(vs. i = OleDbDataAdapter1.com/en-us/library/system.Tables(0).Message) End Try 'Displays number of rows updated. i = OleDbDataAdapter1. 3. a continuación.oledb. En el menú Generar.

microsoft.com/en-us/library/e80y5yhx(vs.NET http://msdn2.Consultar los datos con ADO.aspx .71).