Guardar datos con los métodos DBDirect de TableAdapter en aplicaciones .NET Framework
Nota:
Los conjuntos de datos y las clases relacionadas son tecnologías heredadas de .NET Framework de principios de la década de 2000 que permiten a las aplicaciones trabajar con datos en memoria mientras están desconectadas de la base de datos. Las tecnologías son especialmente útiles para las aplicaciones que permiten a los usuarios modificar los datos y conservar los cambios en la base de datos. Aunque los conjuntos de datos han demostrado ser una tecnología de gran éxito, se recomienda que las nuevas aplicaciones de .NET usen Entity Framework Core. Entity Framework proporciona una manera más natural de trabajar con datos tabulares como modelos de objetos y tiene una interfaz de programación más sencilla.
En este tutorial se proporcionan pasos detallados para ejecutar instrucciones SQL directamente en una base de datos con los métodos DBDirect de un elemento TableAdapter. Los métodos DBDirect de un TableAdapter proporcionan un nivel exhaustivo de control sobre las actualizaciones de la base de datos. Puedes usarlos para ejecutar instrucciones y procedimientos almacenados de SQL concretos mediante la llamada a los métodos Insert
, Update
y Delete
individuales según necesite tu aplicación (por oposición al método Update
sobrecargado que realiza las instrucciones UPDATE
, INSERT
y DELETE
en una sola llamada).
En este tutorial aprenderá a:
Crear y configurar un conjunto de datos con el Asistente para configuración de orígenes de datos.
Seleccionar el control que se va a crear en el formulario al arrastrar elementos desde la ventana Orígenes de datos. Para más información, vea Establecimiento del control que se creará al arrastrar desde la ventana Orígenes de datos.
Cree un formulario enlazado a datos arrastrando elementos desde la ventana Orígenes de datos hasta el formulario.
Agregar métodos para acceder directamente a la base de datos y realizar inserciones, actualizaciones y eliminaciones.
Prerrequisitos
Los pasos de este tutorial funcionan con aplicaciones de Windows Forms para .NET Framework.
En este tutorial se usa LocalDB de SQL Server Express y la base de datos de ejemplo Northwind.
Si no tiene LocalDB de SQL Server Express, instálelo desde la página de descarga de SQL Server Express, o bien mediante el Instalador de Visual Studio. En el Instalador de Visual Studio, puede instalar LocalDB de SQL Server Express como parte de la carga de trabajo Almacenamiento y procesamiento de datos, o bien como un componente individual.
Siga estos pasos para instalar la base de datos de ejemplo Northwind:
En Visual Studio, abra la ventana Explorador de objetos de SQL Server (Explorador de objetos de SQL Server se instala como parte de la carga de trabajo Almacenamiento y procesamiento de datos en el Instalador de Visual Studio). Expanda el nodo SQL Server. Haga clic con el botón derecho en la instancia de LocalDB y seleccione Nueva consulta.
Se abre una ventana del editor de consultas.
Copie el script de Transact-SQL Northwind en el Portapapeles. Este script de T-SQL crea la base de datos Northwind desde cero y la rellena con datos.
Pegue el script de T-SQL en el editor de consultas y, después, elija el botón Ejecutar.
Después de un breve tiempo, la consulta termina de ejecutarse y se crea la base de datos Northwind.
Crear una aplicación de Windows Forms
El primer paso es crear una aplicación de Windows Forms (.NET Framework). Cree un proyecto con el tipo de proyecto Aplicación de Windows Forms, mediante C# o Visual Basic.
Nota
El código de este tutorial está disponible en C# y Visual Basic. Para cambiar el lenguaje de código de esta página entre C# y Visual Basic, use el modificador de lenguaje de código de la parte superior de la página del lado derecho.
Creación de un origen de datos a partir de la base de datos
En este paso se usa el Asistente para configuración de orígenes de datos para crear un origen de datos basado en la tabla Region
de la base de datos de ejemplo Northwind. Debe tener acceso a la base de datos de ejemplo Northwind para crear la conexión. Para información sobre cómo configurar la base de datos de ejemplo Northwind, consulte Instalación de las bases de datos de ejemplo.
Para crear el origen de datos
En el menú Datos, seleccione Mostrar orígenes de datos.
Se abre la ventana Orígenes de datos.
En la ventana Orígenes de datos, seleccione Agregar nuevo origen de datos para iniciar el Asistente para configuración de orígenes de datos.
En la pantalla Elegir un tipo de origen de datos, seleccione base de datos y, a continuación, Siguiente.
En la pantalla Elegir la conexión de datos, realice una de las siguientes operaciones:
Si una conexión de datos a la base de datos de ejemplo Northwind está disponible en la lista desplegable, selecciónela.
O bien
Seleccione Nueva conexión para iniciar el cuadro de diálogo Agregar o modificar conexión.
Si su base de datos requiere una contraseña, seleccione la opción para incluir datos confidenciales y seleccione Siguiente.
En la pantalla Guardar la cadena de conexión en el archivo de configuración de la aplicación, seleccione Siguiente.
Expanda el nodo Tablas en la pantalla Elija los objetos de base de datos.
Seleccione la tabla
Region
y después Finalizar.NorthwindDataSet se agrega al proyecto y la tabla
Region
aparece en la ventana Orígenes de datos.
Adición de controles al formulario para mostrar los datos
Cree los controles enlazados a datos arrastrando elementos desde la ventana Orígenes de datos al formulario.
Para crear controles enlazados a datos en el formulario de Windows Forms, arrastre el nodo principal Región de la ventana Orígenes de datos al formulario.
En el formulario aparecen un control DataGridView y una barra de herramientas (BindingNavigator) para navegar por los registros. Un NorthwindDataSet, RegionTableAdapter
, BindingSource y BindingNavigator aparecen en la bandeja de componentes.
Para agregar botones que llamarán a los métodos DbDirect de TableAdapter
Arrastre tres controles Button desde el Cuadro de herramientas hasta Form1 (debajo de RegionDataGridView).
Establezca las propiedades Nombre y Texto en cada botón.
Nombre Texto InsertButton
Insertar UpdateButton
Actualizar DeleteButton
Eliminar
Para agregar código para insertar nuevos registros en la base de datos
Seleccione InsertButton para crear un controlador de eventos para el evento de clic y abrir el formulario en el editor de código.
Reemplace el controlador de evento
InsertButton_Click
con el código siguiente:private void InsertButton_Click(object sender, EventArgs e) { Int32 newRegionID = 5; String newRegionDescription = "NorthEastern"; try { regionTableAdapter1.Insert(newRegionID, newRegionDescription); } catch (Exception ex) { MessageBox.Show("Insert Failed"); } RefreshDataset(); } private void RefreshDataset() { this.regionTableAdapter1.Fill(this.northwindDataSet1.Region); }
Nota
Según la versión de Visual Studio y las plantillas de proyecto que haya usado, los nombres de variable como
regionTableAdapter
oregionTableAdapter1
usados en este código podrían tener o no un 1 final en el código generado. Realice cualquier corrección en el código para asegurarse de que se usa el nombre correcto en todas partes. Visual Studio muestra un subrayado ondulado rojo donde el nombre es incorrecto.
Para agregar código para actualizar los registros de la base de datos
Haga doble clic en UpdateButton para crear un controlador para el evento de clic y abrir el formulario en el editor de código.
Reemplace el controlador de evento
UpdateButton_Click
con el código siguiente:
Para agregar código para eliminar registros de la base de datos, siga estos pasos:
Seleccione DeleteButton para crear un controlador de eventos para el evento de clic y abrir el formulario en el editor de código.
Reemplace el controlador de evento
DeleteButton_Click
con el código siguiente:
Ejecución de la aplicación
Seleccione F5 para ejecutar la aplicación.
Seleccione el botón Insertar y compruebe que el nuevo registro se muestra en la cuadrícula.
Seleccione el botón Actualizar y compruebe que el registro se actualiza en la cuadrícula.
Seleccione el botón Eliminar y compruebe que el registro se quita de la cuadrícula.
Pasos siguientes
Dependiendo de los requisitos de la aplicación, hay varios pasos que pueden realizarse después de crear un formulario enlazado a datos. Entre las mejoras que podría realizar en este tutorial se incluyen las siguientes:
Agregar funcionalidad de búsqueda al formulario.
Agregar otras tablas al conjunto de datos seleccionando Configurar DataSet con el asistente en la ventana Orígenes de datos. Puede agregar controles que muestren los datos relacionados arrastrando los nodos relacionados al formulario. Para más información, consulte Relaciones en conjuntos de datos.