Compartir a través de


Cómo: Eliminar registros de una base de datos

Para eliminar registros de una base de datos, utilice el método TableAdapter.Update o el método TableAdapter.Delete.Si su aplicación no utiliza TableAdapters, puede utilizar objetos de comando para eliminar registros de una base de datos (por ejemplo, ExecuteNonQuery).

Generalmente se utiliza el método TableAdapter.Update cuando la aplicación utiliza conjuntos de datos para almacenar datos, en tanto que se utiliza el método TableAdapter.Delete cuando la aplicación utiliza objetos para almacenar los datos.

Si el TableAdapter no dispone de un método Delete, significa que el TableAdapter está configurado para utilizar procedimientos almacenados o que su propiedad GenerateDBDirectMethods está establecida en false.Pruebe a establecer la propiedad GenerateDBDirectMethods de TableAdapter en true desde el Diseñador de Dataset y guarde el conjunto de datos para volver a generar el TableAdapter.Si aun así el TableAdapter no dispone de un método Delete, probablemente la tabla no proporciona información suficiente para distinguir entre filas individuales (por ejemplo, la tabla no dispone de clave principal).

Eliminar registros mediante TableAdapters

Los TableAdapters proporcionan maneras diferentes de eliminar registros de una base de datos en función de los requisitos de su aplicación.

Si la aplicación utiliza conjuntos de datos para almacenar datos, puede eliminar los registros del conjunto DataTable deseado en DataSet y, a continuación, llamar al método TableAdapter.Update.El método TableAdapter.Update toma cualquier cambio en la tabla de datos y envía esos cambios a la base de datos (incluidos registros insertados, actualizados y eliminados).

Para eliminar registros de una base de datos utilizando el método TableAdapter.Update

  • Elimine los registros del DataTable deseado eliminando los objetos DataRow de la tabla.Para obtener más información, vea Cómo: Eliminar filas en un DataTable.Después de que las filas se eliminen de DataTable, llame al método TableAdapter.Update.Puede controlar la cantidad de datos que se actualizan pasando un objeto DataSet completo, un objeto DataTable, una matriz de DataRows o un único objeto DataRow.En el código siguiente se muestra cómo eliminar un registro de un objeto DataTable y cómo llamar al método TableAdapter.Update para comunicar el cambio y eliminar la fila de la base de datos.(En este ejemplo se utiliza la tabla Region de la base de datos Northwind.)

    ' Locate the row to delete.
    Dim oldRegionRow As NorthwindDataSet.RegionRow
    oldRegionRow = NorthwindDataSet._Region.FindByRegionID(5)
    
    ' Delete the row from the dataset
    oldRegionRow.Delete()
    
    ' Delete the row from the database
    Me.RegionTableAdapter.Update(Me.NorthwindDataSet._Region)
    
    // Locate the row to delete.
    NorthwindDataSet.RegionRow oldRegionRow;
    oldRegionRow = northwindDataSet.Region.FindByRegionID(5);
    
    // Delete the row from the dataset
    oldRegionRow.Delete();
    
    // Delete the row from the database
    this.regionTableAdapter.Update(this.northwindDataSet.Region);
    

Si la aplicación utiliza objetos para almacenar los datos, puede utilizar los métodos DBDirect del TableAdapter para eliminar datos de los objetos directamente en la base de datos.Al llamar al método Delete, se quitan registros de la base de datos basándose en los valores de parámetro pasados.

Para eliminar registros de una base de datos utilizando el método TableAdapter.Delete

  • Llame al método Delete del TableAdapter, pasando los valores de cada columna como parámetros de Delete.(En este ejemplo se utiliza la tabla Region de la base de datos Northwind.)

    [!NOTA]

    Si no tiene una instancia disponible, cree una instancia de TableAdapter que desee utilizar.

    Dim regionTableAdapter As New NorthwindDataSetTableAdapters.RegionTableAdapter
    
    regionTableAdapter.Delete(5, "NorthWestern")
    
    NorthwindDataSetTableAdapters.RegionTableAdapter regionTableAdapter = 
        new NorthwindDataSetTableAdapters.RegionTableAdapter();
    
    regionTableAdapter.Delete(5, "NorthWestern");
    

Eliminar registros mediante objetos de comando

El ejemplo siguiente elimina directamente registros de una base de datos utilizando objetos de comando.Para obtener más información sobre el uso de objetos de comando para ejecutar comandos y procedimientos almacenados, vea Buscar datos en la aplicación.

Para eliminar registros de una base de datos mediante objetos de comando

  • Cree un nuevo objeto de comando, establezca sus propiedades Connection, CommandType y CommandText.(En este ejemplo se utiliza la tabla Region de la base de datos Northwind.)

    Dim sqlConnection1 As New System.Data.SqlClient.SqlConnection("YOUR CONNECTION STRING")
    
    Dim cmd As New System.Data.SqlClient.SqlCommand
    cmd.CommandType = System.Data.CommandType.Text
    cmd.CommandText = "DELETE Region WHERE RegionID = 5 AND RegionDescription = 'NorthWestern'"
    cmd.Connection = sqlConnection1
    
    sqlConnection1.Open()
    cmd.ExecuteNonQuery()
    sqlConnection1.Close()
    
    System.Data.SqlClient.SqlConnection sqlConnection1 = 
        new System.Data.SqlClient.SqlConnection("YOUR CONNECTION STRING ");
    
    System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand();
    cmd.CommandType = System.Data.CommandType.Text;
    cmd.CommandText = "DELETE Region WHERE RegionID = 5 AND RegionDescription = 'NorthWestern'";
    cmd.Connection = sqlConnection1;
    
    sqlConnection1.Open();
    cmd.ExecuteNonQuery();
    sqlConnection1.Close();
    

Seguridad

Debe tener acceso a la base de datos con la que intenta conectarse, así como permiso para eliminar registros de la tabla deseada.

Vea también

Tareas

Cómo: Insertar nuevos registros en una base de datos

Cómo: Actualizar los registros de una base de datos

Cómo: Guardar los datos de un objeto en una base de datos

Conceptos

Información general sobre TableAdapter

Preparar la aplicación para recibir datos

Buscar datos en la aplicación

Enlazar controles a los datos en Visual Studio

Modificar datos en la aplicación

Validar datos

Guardar datos

Otros recursos

Información general de las aplicaciones de datos en Visual Studio

Conectarse a datos en Visual Studio