Использование SqlDataAdapter для вставки строкиC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Использование SqlDataAdapter для вставки строки

Сообщение Anonymous »

Я хочу вставить строку в базу данных с помощью SqlDataAdapter. У меня есть 2 таблицы (Custormers и Orders) в базе данных CustomerOrders и более тысячи записей. Я хочу создать графический интерфейс (текстовые поля) для добавления новых клиентов и заказов в базу данных в соответствующие таблицы.
  • Как мне это сделать?
Думаю, обычно используется метод

Код: Выделить всё

dataAdapter = new SqlDataAdapter (sqlQuery, conn);
dataSet = new DataSet();
da.Fill(dataSet);
Теперь возьмите значения из текстовых полей (или используйте DataBinding), чтобы добавить новую строку в набор данных и вызовите

Код: Выделить всё

  da.Update(dataSet);
Но вопрос в том, зачем мне вообще извлекать все остальные записи в dataSet с помощью da.Fill(dataSet )? Я просто хочу добавить одну новую запись.

Для этой цели я создаю схему базы данных в наборе данных. вот так:

Код: Выделить всё

  DataSet customerOrders = new DataSet("CustomerOrders");

DataTable customers = customerOrders.Tables.Add("Customers");
DataTable orders = customerOrders.Tables.Add("Orders");

customers.Columns.Add("CustomerID", Type.GetType("System.Int32"));
customers.Columns.Add("FirstName", Type.GetType("System.String"));
customers.Columns.Add("LastName", Type.GetType("System.String"));
customers.Columns.Add("Phone", Type.GetType("System.String"));
customers.Columns.Add("Email", Type.GetType("System.String"));

orders.Columns.Add("CustomerID", Type.GetType("System.Int32"));
orders.Columns.Add("OrderID", Type.GetType("System.Int32"));
orders.Columns.Add("OrderAmount", Type.GetType("System.Double"));
orders.Columns.Add("OrderDate", Type.GetType("System.DateTime"));

customerOrders.Relations.Add("Cust_Order_Rel", customerOrders.Tables["Customers"].Columns["CustomerID"], customerOrders.Tables["Orders"].Columns["CustomerID"]);
Я использовал DataBinding, чтобы привязать эти столбцы к соответствующим текстовым полям.
Теперь я в замешательстве! Что мне делать дальше? Как использовать команду «Вставить»? Потому что я не указал dataAdapter.SelectCommand, поэтому dataAdapter.Update(), я думаю, не будет работать. Пожалуйста, предложите правильный подход.

Подробнее здесь: https://stackoverflow.com/questions/163 ... sert-a-row
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • C# проверяет, содержит ли SqlDataAdapter записи
    Anonymous » » в форуме C#
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Получить необработанную строку SQL из запроса SqlDataAdapter
    Anonymous » » в форуме C#
    0 Ответы
    21 Просмотры
    Последнее сообщение Anonymous
  • Ошибка SqlDataAdapter в c Sharp
    Anonymous » » в форуме C#
    0 Ответы
    23 Просмотры
    Последнее сообщение Anonymous
  • Ошибка SQLDataAdapter.Fill
    Anonymous » » в форуме C#
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • SQLDATAADAPTER Не заполняя поля DateOnly от SQL Server в C#
    Anonymous » » в форуме C#
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»