Compartir a través de


Cómo: Insertar filas en la base de datos (LINQ to SQL)

Actualización: November 2007

Para insertar filas en una base de datos, se agregan objetos a la colección Table<TEntity> de LINQ to SQL asociada y después se envían los cambios a la base de datos. LINQ to SQL convierte los cambios en los comandos INSERT adecuados de SQL.

Nota:

Puede invalidar los métodos predeterminados de LINQ to SQL para las operaciones de base de datos Insert, Update y Delete. Para obtener más información, consulte Personalizar operaciones de inserción, actualización y eliminación (LINQ to SQL).

Los desarrolladores de Visual Studio pueden usar el Diseñador relacional de objetos para desarrollar procedimientos almacenados con el mismo propósito.

En los pasos siguientes se asume que un objeto DataContext válido le conecta a la base de datos Northwind. Para obtener más información, consulte Cómo: Conectarse a una base de datos (LINQ to SQL).

Para insertar una fila en la base de datos

  1. Cree un nuevo objeto que incluya los datos de la columna que se van a enviar.

  2. Agregue el nuevo objeto a la colección Table de LINQ to SQL que está asociada a la tabla de destino en la base de datos.

  3. Envíe el cambio a la base de datos.

Ejemplo

En el ejemplo de código siguiente se crea un nuevo objeto de tipo Order y se llena con los valores adecuados. Después, se agrega el nuevo objeto a la colección Order. Finalmente, se envía el cambio a la base de datos, como una nueva fila de la tabla Orders.

' Create a new Order object.
Dim ord As New Order With _
{.OrderID = 12000, _
 .ShipCity = "Seattle", _
 .OrderDate = DateTime.Now}

' Add the new object to the Orders collection.
db.Orders.InsertOnSubmit(ord)

' Submit the change to the database.
Try
    db.SubmitChanges()
Catch e As Exception
    Console.WriteLine(e)
    ' Make some adjustments.
    ' ...
    ' Try again.
    db.SubmitChanges()
End Try
// Create a new Order object.
Order ord = new Order
{
    OrderID = 12000,
    ShipCity = "Seattle",
    OrderDate = DateTime.Now
    // …
};

// Add the new object to the Orders collection.
db.Orders.InsertOnSubmit(ord);

// Submit the change to the database.
try
{
    db.SubmitChanges();
}
catch (Exception e)
{
    Console.WriteLine(e);
    // Make some adjustments.
    // ...
    // Try again.
    db.SubmitChanges();
}

Vea también

Tareas

Cómo: Asignar procedimientos almacenados para realizar actualizaciones, inserciones y eliminaciones (Diseñador relacional de objetos)

Conceptos

Métodos DataContext (Diseñador relacional de objetos)

Otros recursos

Cómo: Administrar los conflictos de cambios (LINQ to SQL)

Crear y enviar cambios en los datos (LINQ to SQL)