方法 : 行をデータベースに挿入する (LINQ to SQL)
関連付けられた LINQ to SQL Table<TEntity> コレクションにオブジェクトを追加し、その変更内容をデータベースに送信することで、データベースに行を挿入できます。LINQ to SQL によって、変更内容が SQL の INSERT コマンドに適切に変換されます。
メモ |
---|
LINQ to SQL の Insert、Update、および Delete の既定のデータベース操作メソッドはオーバーライドできます。詳細については、「挿入、更新、および削除の各操作のカスタマイズ (LINQ to SQL)」を参照してください。 Visual Studio を使用している開発者は、オブジェクト リレーショナル デザイナーを使用して、同じ用途のストアド プロシージャを開発できます。詳細については オブジェクト リレーショナル デザイナ (O/R デザイナ) および オブジェクト リレーショナル デザイナー (O/R デザイナー) および オブジェクト リレーショナル デザイナー (O/R デザイナー). |
以下の手順では、有効な DataContext で Northwind データベースに接続されるものと想定しています。 詳細については、「方法 : データベースに接続する (LINQ to SQL)」を参照してください。
行をデータベースに挿入するには
送信する列データを含む新しいオブジェクトを作成します。
データベース内の挿入先テーブルに関連付けられた LINQ to SQL Table コレクションに新しいオブジェクトを追加します。
データベースに変更内容を送信します。
使用例
次のサンプル コードでは、Order 型の新しいオブジェクトを作成し、適切な値をこのオブジェクトに設定します。 その後で、新しいオブジェクトを Order コレクションに追加します。 最後にこの変更内容を 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();
}
参照
処理手順
方法 : 更新、挿入、および削除を実行するストアド プロシージャを割り当てる (O/R デザイナー)