Gran parte de las aplicaciones y de los sitios web hacen uso de bases de datos para el almacenamiento de la información necesaria para generar contenidos dinámicos, mantener copias de seguridad, entre otras cosas. Los sistemas gestores de base de datos nos permiten almacenar, visualizar y modificar los datos. En el mismo orden de ideas, el día de hoy se hablará de ADO .NET y como se utiliza para la creación de base de datos.
ADO .NET es una arquitectura que permite el acceso y la manipulación eficiente de los datos mediante un conjunto de clases, interfaces y estructuras, permitiendo la creación de aplicaciones distribuidas. Esta tecnología es parte de la biblioteca de clases ofrecidas por el Microsoft .NET Framework. Su componente principal es la clase DataSet, que almacena los datos provenientes de una fuente.
La clase Dataset:
La clase DataSet consiste en una colección de objetos "DataTable", formados por filas y columnas, que se pueden relacionar unas con otras, con objetos llamados "DataRelation". También contiene información acerca de las claves principales y foráneas, que permiten estas relaciones. Básicamente, esta es la definición de una base de datos, un conjunto de tablas que se relacionan entre sí.
Objetos:
También posee otros objetos:
• El objeto Connection proporciona conectividad a la fuente de los datos, como Microsoft SQL Server, Oracle, SQLite, MySQL, etc.
• El objeto Command permite tener acceso a comandos de base de datos para devolver datos, modificar, eliminar, ejecutar procedimientos y enviar o recuperar información sobre parámetros.
• El objeto DataReader para su lectura, realiza esta operación un registro a la vez.
• Y finalmente el objeto DataAdapter que proporciona el puente entre el objeto DataSet y la fuente de los datos, que mediante comandos SQL, permite almacenar los mismos. En otras palabras, un DataSet es llenado a partir de una base de datos gracias a un objeto DataAdapter que inicia los comandos descritos anteriormente.
Cabe destacar que usted tendrá que elegir si usar un DataAdapter o un DataReader, dependiendo de lo que necesite. Se usa un DataAdapter cuando:
Cabe destacar que usted tendrá que elegir si usar un DataAdapter o un DataReader, dependiendo de lo que necesite. Se usa un DataAdapter cuando:
- Desee almacenar datos en la memoria caché para manipularlos. Si sólamente necesita leer los datos de una consulta es conveniente utilizar un DataReader.
- Necesite realizar el procesamiento exhaustivo de los datos sin necesidad de tener una conexión abierta con la fuente de los datos o si desea tener un acceso remoto a los datos gracias a un servicio web XML.
- Desee interectuar de forma dinámica con los datos, por ejemplo enlazar a una aplicación de Windows forms o para combinar datos provenientes de diferentes orígenes.
- SqlConnection, para SQL Server.
- OleDbConnection, pars el proveedor OLE DB.
- OracleConnection, para base de datos de Oracle.
- OdbcConnection, para el proveedor ODBC.
using (SqlConnection connection = new SqlConnection(connectionString)) { connection.Open(); // Do work here. }Cuando se desee establecer una conexión con una base de datos OLE DB o ODBC simplemente se sustituye SqlConnection por su respectivo objeto, por otra parte para establecer una conexión una base de datos Oracle se ejecuta de la siguiente manera:
using (OracleConnection connection = new OracleConnection(connectionString))
{ connection.Open(); // Do work here. } OracleConnection nwindConn = new OracleConnection("Data Source=MyOracleServer;Integrated Security=yes;"); nwindConn.Open();Con esto se asume que "connectionString" es una cadena de texto válida. A continuación se muestra un código en donde se define la propiedad connectionString antes de abrir la conexión:
private static void OpenSqlConnection()
{ string connectionString = GetConnectionString();
using (SqlConnection connection = new SqlConnection()) { connection.ConnectionString = connectionString; connection.Open(); Console.WriteLine("State: {0}", connection.State); Console.WriteLine("ConnectionString: {0}", connection.ConnectionString); } }
static private string GetConnectionString() { // Para evitar escribir la cadena de conexión en tu código es recomendable
// que la recuperes a través de un archivo de configuración.
return "Data Source=MSSQL1;Initial Catalog=AdventureWorks;" + "Integrated Security=true;"; }
Cómo ejecutar un comando:
Pars para ejecutar un comando nuevamente se tiene que utilizar su respectivo objetos: SqlCommand, OleDbCommand, OracleCommand, OdbcCommand, etc. Cada objeto posee un conjunto de métodos que se basan en el tipo de comando y el valor devuelto que se desee obtener. A continuación se muestra un código para leer datos de ordenes mediante secuencias de SQL (SELECT, INSERT, DELETE, etc.), que se hallan dentro de un string y devuelve su resultado.private static void ReadOrderData(string connectionString) { string queryString = "SELECT OrderID, CustomerID FROM dbo.Orders;";
using (SqlConnection connection = new SqlConnection(connectionString)) { SqlCommand command = new SqlCommand(queryString, connection); connection.Open();
using(SqlDataReader reader = command.ExecuteReader()) { while (reader.Read()) { Console.WriteLine(String.Format("{0}, {1}", reader[0], reader[1])); } } } }
ADO .NET utiliza XML como formato de transmisión de datos mediante otra clase llamada XmlDataDocument que se puede enlazar a un DataSet, esto permite que XML se integre con datos relacionales y no estar limitado a una sola representación de los datos.
La ventaja de tener los datos disponibles en dos formatos es que la parte estructurada de un documento XML puede asignarse a un conjunto de datos (DataSet) y almacenarse, indexarse y buscarse de manera eficiente, a pesar de no tener conexión a internet. Por otra parte también facilita el acceso a los datos mediante el protocolo HTTP.
Si desean profundizar más en el tema de base de datos con ADO. NET, Visual Studio y C#, les recomiendo el siguiente video, en donde se crea una base de datos y se accede a los clientes:
Si desean profundizar más en el tema de base de datos con ADO. NET, Visual Studio y C#, les recomiendo el siguiente video, en donde se crea una base de datos y se accede a los clientes:
En el video anterior se muestra como se crea una bsse de datos con SQL Server, en donde se quiere acceder a la tabla clientes, luego se establece una conexión con el origen de datos pars mostrar luego los resultados en un formulario de Windows.
Seguido a esto podrán ver otro video dondr se habla más del tema de ADO.NET, pero cin uns mayor profundidad y en esta ocasión se utiliza el lenguaje Visual Basic.
Seguido a esto podrán ver otro video dondr se habla más del tema de ADO.NET, pero cin uns mayor profundidad y en esta ocasión se utiliza el lenguaje Visual Basic.
Gracias por leer este post acerca de la creación de bases de datos y su manejo con ADO. NET. Esta tecnología facilita muchas operaciones y se utiliza en uno de los lenguajes más utilizados. Espero que les haya servido de ayuda.
Si deseean ver más ejemplos de códigos, pueden ver el siguiente enlace:
https://docs.microsoft.com/es-es/dotnet/framework/data/adonet/ado-net-code-examples
¡Saludos y espero verlos pronto!
Si deseean ver más ejemplos de códigos, pueden ver el siguiente enlace:
https://docs.microsoft.com/es-es/dotnet/framework/data/adonet/ado-net-code-examples
¡Saludos y espero verlos pronto!
0 Comentarios