Una introducción a DataSet en VB.NET

Gran parte de la tecnología de datos de Microsoft, ADO.NET, es proporcionada por el objeto DataSet. Este objeto lee la base de datos y crea una copia en memoria de esa parte de la base de datos que necesita su programa. Un objeto DataSet generalmente corresponde a una tabla o vista de base de datos real, pero DataSet es una vista desconectada de la base de datos. Después de que ADO.NET crea un DataSet, no hay necesidad de una conexión activa a la base de datos, lo que ayuda en la escalabilidad porque el programa solo tiene que conectarse con un servidor de base de datos durante microsegundos al leer o escribir. Además de ser confiable y fácil de usar, DataSet admite tanto una vista jerárquica de los datos como XML como una vista relacional que puede administrar después de que su programa se desconecte.

Puede crear sus propias vistas únicas de una base de datos utilizando DataSet. Relacione los objetos DataTable entre sí con los objetos DataRelation. Incluso puede exigir la integridad de los datos utilizando los objetos UniqueConstraint y ForeignKeyConstraint. El ejemplo simple a continuación usa solo una tabla, pero puede usar varias tablas de diferentes fuentes si las necesita.

Codificación de un conjunto de datos VB.NET

Este código crea un DataSet con una tabla, una columna y dos filas:

La forma más común de crear un DataSet es usar el método Fill del objeto DataAdapter. Aquí hay un ejemplo de programa probado:

El DataSet se puede tratar como una base de datos en el código de su programa. La sintaxis no lo requiere, pero normalmente proporcionará el nombre de la DataTable para cargar los datos. Aquí hay un ejemplo que muestra cómo mostrar un campo.

Aunque el DataSet es fácil de usar, si el objetivo es el rendimiento sin procesar, es mejor que escriba más código y utilice el DataReader..

Si necesita actualizar la base de datos después de cambiar el DataSet, puede usar el método Update del objeto DataAdapter, pero debe asegurarse de que las propiedades de DataAdapter estén establecidas correctamente con los objetos SqlCommand. SqlCommandBuilder generalmente se usa para hacer esto.

DataAdapter descubre qué ha cambiado y luego ejecuta un comando INSERT, UPDATE o DELETE, pero como con todas las operaciones de la base de datos, las actualizaciones de la base de datos pueden tener problemas cuando otros usuarios actualizan la base de datos, por lo que a menudo necesita incluir código para anticipar y resolver problemas al cambiar la base de datos.

A veces, solo un DataSet hace lo que necesita. Si necesita una colección y está serializando los datos, un DataSet es la herramienta que debe usar. Puede serializar rápidamente un DataSet a XML llamando al método WriteXML.

DataSet es el objeto más probable que usará para los programas que hacen referencia a una base de datos. Es el objeto principal utilizado por ADO.NET, y está diseñado para usarse en modo desconectado.