Acceso A Datos
ADO .NET es la última versión de la tecnología de acceso a datos de Microsoft. ADO .NET es un conjunto de clases, insertadas en el .NET Framework, que permiten que se interactue con fuentes de datos.
ADO .NET puede usar:
el proveedor SQL Server
el proveedor OLEDB
el proveedor ODBC
Aquí nos fijaremos en losproveedores OLEDB y ODBC.
El Proveedor SQL Server es la forma más aconsejable de conectarse a una Base de Datos SQL Server (version 7.0 o superior). Usa un protocolo propietario para conectarse a la Base de Datos y se basa en el namespace System.Data.Sqlclient.
El Proveedor OLEDB se usa con Bases de Datos que soportan interfaces. ADO.NET entre los que se encuentran SQLOLEDB (Microsoft OLEDB Provider for SQL Server)
,MSDAORA ( Microsoft OLE DB Provider for Oracle),Microsoft.Jet.OLEDB.4.0 (OLE DB Provider for Microsoft Jet) y VFPOLEDB (Provider para Visual FoxPro), entre otros. Se basan en el namespace System.Data.Oledb.
El Proveedor ODBC se usan con Bases de Datos que soportan accesos a datos mediante ODBC. Este proveedor no viene incluido en la Beta 2 inglesa del .NETFramework y te lo tienes que bajar de http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/msdn-files/027/001/668/msdncompositedoc.x La instalación te incorpora el fichero System.Data.ODBC.DLL que te da acceso al namespace System.Data.ODBC
Siempre que se pueda es mejor usar el driver OLE DB que el ODBC debido a que es más rápido y además soporta un mayor número deinstrucciónes. Por ejemplo según se indica en el "Supported ODBC grammar", el driver ODBC soporta 10 de los SET’s de VFP mientras que el driver OLE DB de VFP parece que es una versión light de la runtime pues soporta 333 (sí, los he contado) comandos y funciones que son nativas de VFP, y entre esas incluye el DO , SET PROCEDURE TO, transacciones, nativo Fox SQL, crear tablas son libres o parte una Base deDatos (no he visto si se puede CREATE CURSOR o no). No soporta el DEFINE CLASS o el SET CLASSLIB TO. Viendo este poder, se comprende que sólo los que tienen VFP tengan el driver.
La forma más natura de conectarse al Proveedor OLEDB es mediante el uso de OleDbConnection. OleDbConnection realiza una simple conexión a la Base de Datos, y según las características de la Base de Datos te da elpoder de manipularla. Para cerrar la conexión se debe de usar el método close() del objeto.
Una vez conectados en .NET, hay 3 formas de acceder a las datos de una Base de Datos:
DataSet
DataReader
ExecuteNonquery
El DataSet, es parecido a los recordset, y suele ser el resultado de una consulta SQL. Con el DataSet se toman un conjunto dedatos y a continuación se desconecta inmediatamente de la Base de Datos para liberar recursos. Esto signigica que si haces cambios en el DataSet tienes inmediantemente que grabar esos cambios en la Base de Datos. En esto casos se debe complementar el DataSet con el DataAdapter.
El segundo método es usar un DataReader, es un recordset con un cursor forward-only. Permanete conectado a la Base deDatos y se debe de usar en conjunción con un OleDbCommand.
El tercer método se llama ExecuteNonQuery. Se usa para ejecutar una instrucción SQL que no devuelve nada, algo similar al "db.execute(sql)" de los clásicos ASP. Se debería de usar un OleDbCommand cuando se use un DataReader.
Un ejemplo de cada uno se muestra a continuación. En primer lugar tienes que indicar la cadena de conexión:
Acceso a Datos mediante DataSet
/////////////////////////////////////////////////
// Ejemplo #1: Acceso a datos mediante DataSet //
// Fichero nuevo2.cs //
/////////////////////////////////////////////////
using System;
using System.Data;
class TestClass
{
static void Main(string[] args)
{
OleDbConnection con=new OleDbConnection("Provider=VFPOLEDB.1 ;Data...
Regístrate para leer el documento completo.