Introducción
ADO .Net
Introducción
Componentes de Microsoft® ADO.NET
Diferencias entre ADO.NET y el modeloADO clásico
Cómo y cuándo utilizar ADO clásico en aplicaciones de Microsoft .NET
Introducción a ADO.NET
ADO.NET es la evolución natural del modelo ADO; se basa en el desarrollo de aplicaciones en n capas, con XML como pilar central
ADO .NET es un nuevo conjunto de clases que proporciona servicios de acceso a datos a los programadores .NET
Es una parte integral de la clase Framework, que contiene toda la biblioteca de clases que Microsoft ofrece con .NET, incluidas las clases fundamentales para los tipos de sistemas anteriores, como los de E/S, redes, datos y XML
Componentes de ADO.NET
Proveedores administrados
DataSets
Proveedores administrados
El proveedor de datos .NET es un conjunto de componentes que incluye los objetos Connection, Command, DataReader y DataAdapter
El proveedor de datos .NET está diseñado para ser muy sencillo y crear una capa mínima entre el origen de datos y el código, lo que aumenta el rendimiento sin detrimento de la funcionalidad
Componentes de los proveedores
administrados
Tipos de proveedores administrados
− Proveedor administrado OLEDB
− Proveedor administrado SQL
− Proveedor administrado ODBC
Proveedor administrado OLEDB
Utiliza proveedores OLE DB originales a través de la interoperabilidad COM para habilitar el acceso a datos.
Para usar el proveedor de datos OLE DB en entornos .NET, también se debe emplear un proveedor OLE DB. Los siguientes proveedores son compatibles con ADO.NET:
− Proveedor OLE DB de Microsoft para SQL Server
− Proveedor OLE DB de Microsoft para Oracle
− Proveedor OLE DB Microsoft.Jet.OLEDB.4.0 para Jet
Estas clases se encuentran en el espacio de nombres System.Data.OleDb.
Ejemplo de conexión OLEDB
Dim OLEDBCn as OLEDBConnectionDim strConn as string
StrConn = "Provider=MSDAORA.1;Data Source=dseoracle8; user id=demo;password=demo;"
OLEDBCn = New OLEDBCOnnectionOLEDBCn.Connectionstring = strconnOLEDBCn.Open()
Proveedor administrado SQL
Utiliza su propio protocolo para comunicarse con la base de datos de Microsoft SQL Server™
Estas clases se encuentran en el espacio de nombres System.Data.SqlClient.
Ejemplo de conexión SQL
Dim SQLCn as SQLConnectionDim strConn as String
StrConn = "Data Source=Vijayab1; user id=sa;password=Contraseña1;Initial Catalog=Neptuno;"
SQLCn = New SQLConnectionSQLCn.Connectionstring = strconnSQLCn.Open()
Proveedor administrado ODBC
El proveedor de datos ODBC .NET es un componente complementario del SDK B2 de .NET Framework.
Ofrece acceso a controladores ODBC originales del mismo modo que el proveedor de datos OLE DB .NET ofrece acceso a proveedores OLE DB originales.
El proveedor de datos ODBC .NET está pensado para funcionar con todos los controladores que cumplan las especificaciones ODBC.
Proveedor administrado ODBC (2)
Con el proveedor de datos ODBC .NET sólo se han probado los siguientes controladores:
− Controlador ODBC para Microsoft SQL
− Controlador ODBC de Microsoft para Oracle
− Controlador ODBC para Microsoft Jet
Estas clases se encuentran en el espacio de nombres System.Data.Odbc.
El proveedor de datos ODBC .NET también requiere la instalación de MDAC 2.6 o posterior
Ejemplo de conexión ODBC
Dim odbccn As Odbc.OdbcConnection = New Odbc.OdbcConnection("Driver={SQL SERVER};SERVER=Vijayab1;UID=sa;PWD=Contraseña1;DATABASE=Neptuno;")
Dim odbcda As Odbc.OdbcDataAdapter = New Odbc.OdbcDataAdapter("Select * from Empleados", odbccn)
Dim odbcds As New DataSet()
odbcda.Fill(odbcds, "Empleados")
Me.DataGrid1.DataSource = odbcds.Tables("Empleados")
Objeto Command
Representa una instrucción SQL o un procedimiento almacenado que ejecutar en un origen de datos.
DataReader
DataReader para recuperar una secuencia de datos de sólo lectura y sólo hacia delante, a partir de una base de datos.
Ejemplo de DataReader
Dim SQLcn As SqlClient.SqlConnectionDim cmd As SqlClient.SqlCommandDim dr As SqlClient.SqlDataReaderDim strconn As String
SQLcn = New SqlClient.SqlConnection() strconn = "Data Source=byri;integrated security=SSPI;Initial
catalog=Neptuno" SQLcn.ConnectionString = strconn SQLcn.Open()
cmd = New SqlClient.SqlCommand("Select * from Productos") cmd.Connection = SQLcn dr = cmd.ExecuteReader(CommandBehavior.CloseConnection) While dr.Read Me.ListBox1.Items.Add(dr.GetValue(1)) End While
dr.Close()
DataAdapter
Representa un conjunto de comandos de datos y una conexión a base de datos que se utilizan para rellenar el conjunto de datos DataSet y actualizar el origen de datos.
Propiedades de DataAdapter
SelectCommand
InsertCommand
DeleteCommand
UpdateCommand
TableMappings
DataSet
DataSet
Tablas
Tabla
Columnas
Columna
Restricciones
Restricción
Filas
Fila
Relaciones
Relación
DataSet
Dim strconn As String
strconn = "Provider=SQLOLEDB.1;Data Source=byri;IntegratedSecurity=SSPI;Persist Security Info=False;Initial
Catalog=Neptuno;" Dim OLEDBCn As OleDb.OleDbConnection = New
OleDb.OleDbConnection(strconn)'OLEDBCn.ConnectionString = strconn
Dim cmd As OleDb.OleDbCommand = New OleDb.OleDbCommand("Select * from Productos", OLEDBCn)
Dim da As OleDb.OleDbDataAdapter = New OleDb.OleDbDataAdapter()
da.SelectCommand = cmdOLEDBCn.Open()
Dim ds As New DataSet()da.Fill(ds, "Productos")
Diferencias entre ADO y ADO.NET
Se comunica con una base de datos con llamadas estándar al objeto DataAdapter
Datos proporcionados por el RecordSet, pero generalmente admite acceso conectado, representado por el objeto Connection
Admite DataRelationRequiere consulta JOIN
Utiliza DataSetUtiliza Recordset
ADO.NETADO
Diferencias entre ADO y ADO.NET (2)
ADO.NETADO
Usa cursores del lado del servidor y del lado del cliente
Arquitectura desconectada: no se utilizan cursores
Bloqueos de bases de datos y conexiones activas a bases de datos
No conserva bloqueos de bases de datos
Cuándo utilizar ADO.NET
Aplicaciones cliente/servidor
Cursores del lado del servidor
Bloqueo pesimista
Cómo utilizar ADO
Definir una referencia a una biblioteca Microsoft ActiveX® Data Object 2.x seleccionando la ficha COM (hacemos clic en Proyecto y después en Agregar referencia)
Se debe utilizar el objeto ADODB
Utilización de ADO en .NET
Ejemplo:
Dim cn As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim strconn As String
strconn = "Provider=SQLOLEDB.1;Data Source=Byri;Integrated Security=SSPI;Persist security info=false;Initial Catalog=Neptuno;" cn.Open(strconn)cn.CursorLocation = ADODB.CursorLocationEnum.adUseClient
rs.Open("select * from Productos", cn,ADODB.CursorTypeEnum.adOpenStatic,ADODB.LockTypeEnum.adLockReadOnly)
Dim DA As OleDb.OleDbDataAdapterDA = New OleDb.OleDbDataAdapter()
Dim DS As New DataSet()DA.Fill(DS, rs, "RECORDSET")
Top Related