Как вставить строки в базу данных (LINQ to SQL)
Обновлен: November 2007
Строки в базу данных можно вставить, добавив объекты в связанные коллекции LINQ to SQL Table<TEntity> и затем отправив эти изменения в базу данных. LINQ to SQL преобразует изменения в соответствующие команды SQL INSERT.
Примечание. |
---|
Можно переопределить методы LINQ to SQL, используемые по умолчанию для операций Insert, Update и Delete базы данных. Дополнительные сведения см. в разделе Настройка операций вставки, обновления и удаления (LINQ to SQL). Разработчики, использующие Visual Studio, могут использовать Сред. Объектно-реляционный конструктор для разработки хранимых процедур, выполняющих те же задачи. Дополнительные сведения см. в разделах Реляционный конструктор объектов и Реляционный конструктор объектов и Реляционный конструктор объектов. |
В следующих шагах предполагается, что подключение к базе данных Northwind выполняется с помощью допустимого объекта DataContext. Дополнительные сведения см. в разделе Как соединиться с базой данных (LINQ to SQL).
Вставка строки в базу данных
Создайте новый объект, содержащий столбец данных для отправки.
Добавьте новый объект в коллекцию Table LINQ to SQL, связанную с целевой таблицей в базе данных.
Отправьте изменение в базу данных.
Пример
В следующем примере кода создается новый объект с типом 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();
}
См. также
Задачи
Основные понятия
Методы DataContext (реляционный конструктор объектов)