Formularios web ASP.NET: conexión de base de datos
En esta sección te explicamos Cómo se implementan las conexiones de bases de datos en ASP.NET. En el siguiente contenido, entrará en contacto con ADO.NET.ADO.NET también es parte de .NET Framework. ADO.NET se utiliza para manejar el acceso a datos. A través de ADO.NET, puede operar la base de datos.
Ejemplo
Conexión de base de datos: vincularse al control DataList
Conexión de base de datos: vinculada al control del repetidor
ADO.NET es parte de .NET Framework
ADO.NET consta de una serie de clases que manejan el acceso a datos.
ADO.NET está completamente basado en XML
ADO.NET no tiene un objeto Recordset, a diferencia de ADO
En nuestro ejemplo, usaremos la base de datos Northwind.
Primero, importe el espacio de nombres "System.Data.OleDb". Necesitamos este espacio de nombres para operar Microsoft Access y otros proveedores de bases de datos OLE DB. Crearemos la conexión a esta base de datos en la subrutina Page_Load. Creamos una variable dbconn y le asignamos una nueva clase OleDbConnection con una cadena de conexión que indica el proveedor OLE DB y la ubicación de la base de datos. Luego abrimos la conexión de la base de datos:
<%@ Import Namespace="System.Data.OleDb" %><script runat="server">sub Page_Loaddim dbconndbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;data source=" & server.mappath( "northwind.mdb"))dbconn.Open()end sub</script>
Nota: ¡Esta cadena de conexión debe ser una cadena continua sin saltos de línea!
Para especificar los registros que se recuperarán de la base de datos, crearemos una variable dbcomm y le asignaremos una nueva clase OleDbCommand. Esta clase OleDbCommand se utiliza para emitir consultas SQL en tablas de bases de datos:
<%@ Import Namespace="System.Data.OleDb" %><script runat="server">sub Page_Loaddim dbconn,sql,dbcommdbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;data source=" & server.mappath("northwind.mdb"))dbconn.Open()sql="SELECCIONAR * DESDE clientes"dbcomm=Nuevo OleDbCommand(sql,dbconn)end sub</script>
La clase OleDbDataReader se utiliza para leer un flujo de registros de una fuente de datos. El DataReader se crea llamando al método ExecuteReader del objeto OleDbCommand:
<%@ Import Namespace="System.Data.OleDb" %><script runat="server">sub Page_Loaddim dbconn,sql,dbcomm,dbreaddbconn=Nueva conexión OleDb("Provider=Microsoft.Jet.OLEDB.4.0;fuente de datos= " & server.mappath("northwind.mdb"))dbconn.Open()sql="SELECCIONAR * DE clientes"dbcomm=Nuevo OleDbCommand(sql,dbconn)dbread=dbcomm.ExecuteReader()end sub</script>
Luego, vinculamos el DataReader al control Repetidor:
<%@ Import Namespace="System.Data.OleDb" %><script runat="server">sub Page_Loaddim dbconn,sql,dbcomm,dbreaddbconn=Nueva conexión OleDb("Provider=Microsoft.Jet.OLEDB.4.0;fuente de datos= " & server.mappath("northwind.mdb"))dbconn.Open()sql="SELECCIONAR * DE clientes"dbcomm=Nuevo OleDbCommand(sql,dbconn)dbread=dbcomm.ExecuteReader()clientes.DataSource=dbreadcustomers.DataBind()dbread.Close()dbconn.Close()end sub</script><html><body> <form runat="servidor"><asp:Repetidor id="clientes" runat="servidor"><HeaderTemplate><table><tr><th>Nombre de la empresa</th><th>Nombre de contacto</th><th>Dirección</th><th>Ciudad</th></tr ></HeaderTemplate><ItemTemplate><tr><td><%#Container.DataItem("companyname")%></td><td><%#Contain er.DataItem("nombre de contacto")%></td><td><%#Container.DataItem("dirección")%></td><td><%#Container.DataItem("ciudad")%> </td></tr></ItemTemplate><FooterTemplate></table></FooterTemplate></asp:Repeater></form></body></html>
Si ya no necesita acceder a la base de datos, recuerde cerrar el DataReader y la conexión de la base de datos:
dbread.Close()dbconn.Close()