ADO .NET - Danysoft

Anuncio
ADO .NET
Alejandro Gassmann
Equipo Danysoft
Artículos Grupo Danysoft: ADO .NET
Página 2 / 6
Artículos Grupo Danysoft: ADO .NET
ADO.NET
Posiblemente muchos de los webmasters que llevan un par de años en la creación de
sitios web puedan sentirse algo desorientados al saber que Microsoft ha creado una
nueva tecnología para el acceso a bases de datos.
Al haberse familiarizado con la tecnología ActiveX Data Object (ADO), quizás lo menos
que se espera es tener que aprender una nueva tecnología, con sus propiedades,
métodos y características.
En el caso de la nueva versión de ADO, denominada ADO.NET, el desarrollador no tiene
de que preocuparse. ADO.NET es una tecnología mucho más sencilla de utilizar, con un
modelo de objetos basado en XML, lo que permite una mejor interacción con la
información desde y hacia las bases de datos.
Beneficios de ADO.NET
Independencia de la Fuente de Datos
ADO.NET utiliza para el manejo de datos el objeto DataSet, el cual a diferencia de los
que sucedía con ADO, es totalmente independiente del tipo de conexión que se utiliza
para acceder a la base de datos.
Rendimiento
Toda la arquitectura de ADO.NET está basada en XML. Esto permite que el manejo de los
datos a través de ADO.NET sea dramáticamente más eficiente que en ADO, en donde el
modelo de acceso a las bases de datos estaba basado en COM.
Escalabilidad
Con la utilización del objeto DataSet, la conexión a la base de datos es utilizada por
mucho menos tiempo de parte del servidor.
La cantidad de conexiones a bases de datos en un servidor, resulta un actor
fundamental en cuanto al rendimiento de dicho servidor. ASP.NET esta basado en
disconnected data acces, por lo tanto se reduce el tiempo de uso de las conexiones,
permitiendo un sistema mucho más escalable.
Compatibilidad con Firewalls
El uso de XML para el ma nejo de los datos en ADO.NET, permite una total compatibilidad
con máquinas en donde esté instalado algún tipo de Firewalls. ADO.NET viene a
solucionar los problemas de compatibilidad de ADO con respecto a este tipo de
aplicaciones.
La arquitectura de ADO.NET
Como sucede en ASP.NET, los objetos se encuentran encapsulados en Namespaces
Página 3 / 6
Artículos Grupo Danysoft: ADO .NET
Cada vez que quieran utilizar los objetos de ADO.NET, se deberá declarar en la página
aspx, el nombre del Namespace a utilizar.
Declarar Namespaces en ADO.NET
<%@ Import Namespace="System.Data" %>
Todos los objetos y tipos de datos para ADO.NET
<%@ Import Namespace="System.Data.ADO" %>
Objetos para las conexiones mediante OLE-DB
<%@ Import Namespace="System.Data.SQL" %>
Objetos para las conexiones mediante SQL Server
<%@ Import Namespace="System.Data.XML" %>
Objetos XML
<%@ Import Namespace="System.Data.SQLTypes" %>
Tipos de datos SQL
Manejo de datos con ADO.NET
Los datos y la información sobre la base de datos en ADO.NET está almacenados en el
Objeto DataSet, que pertenece al Namespace System.Data.
La estructura de este namespace es la siguiente:
DataSet
Es el objeto principal en ADO.NET y contiene toda la información de la base de datos.
DataTable
Contiene la información de una tabla determinada
DataRow
Contiene la información de una fila, en una tabla determinada
DataColumn
Contiene la información de una columna, en una tabla determinada
Página 4 / 6
Artículos Grupo Danysoft: ADO .NET
DataRelation
Contiene la información acerca de la relación entre dos columnas
DataSetView
Contiene los detalles acerca de la vista de una tabla
Creando un DataSet
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.ADO" %>
<script language="vb" runat="server">
Sub Page_Load(Source as Object, E as EventArgs)
Dim strConnString as String
strConnString = "Provider=SQLOLEDB; Data Source=(local); " & _
"Initial Catalog=pubs; User ID=sa"
Dim objConn as ADOConnection
objConn = New ADOConnection(strConnString)
objConn.Open()
Dim strSQL as String = "SELECT * FROM authors"
Dim objDSCommand as ADODatasetCommand
Dim objDataset as Dataset
objDSCommand = New ADODatasetCommand(strSQL, objConn)
objConn.Close()
objConn = Nothing
objDataset = New Dataset
objDSCommand.FillDataSet(objDataset, "Author Information")
MyFirstDataGrid.DataSource = _
objDataset.Tables("Author Information").DefaultView
MyFirstDataGrid.DataBind()
End Sub
</script>
<asp:DataGrid id="MyFirstDataGrid" runat="server" />
</html>
Este es el código necesario para importar los los objetos de los namespaces necesarios
para el manejo y la conexión a la base de datos.
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.ADO" %>
Página 5 / 6
Artículos Grupo Danysoft: ADO .NET
Este código ejecuta el código, con el evento Page_Load
<script language="vb" runat="server">
Sub Page_Load(Source as Object, E as EventArgs)
Crea la variable que contendrá el String de la conexión y conecta la base de datos por
default del server SQL
Dim strConnString as String
strConnString = "Provider=SQLOLEDB; Data Source=(local); " & _
"Initial Catalog=pubs; User ID=sa"
Este código crea el objeto conexión y utiliza el string strConnString para conectar con la
base.
Dim objConn as ADOConnection
objConn = New ADOConnection(strConnString)
objConn.Open()
Se define el comando que se desea ejecutar
objDSCommand = New ADODatasetCommand(strSQL, objConn)
Se define el objeto Dataset y se ejecuta la intrucción SQL
Dim strSQL as String = "SELECT * FROM authors"
Dim objDSCommand as ADODatasetCommand
Dim objDataset as Dataset
Se cierra la conexión
objConn.Close()
objConn = Nothing
Finalmente
La llegada de ADO.NET es una gran noticia para los desarrolladores. Si bien no es un
reemplazo completo de ADO, esta nueva tecnología permite crear servidores con acceso
a grandes bases de datos mucho más escalables.
A diferencia de lo que ocurría con ADO y su integración con COM, en ADO.NET es XML el
lenguaje que maneja y mueve la información, por lo que todo el rendimiento en el
servidor será superior.
La independencia del Objeto DataSet hacia el tipo de conexión, también contribuye a la
facilidad para mantener el código. Ya no será necesario modificar todo el String de
conexión al cambiar la base de datos.
Para más información, visitar:
http://msdn.microsoft.com/vstudio/nextgen/technology/adoplusdefault.asp
Página 6 / 6
Descargar