Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.67/18: Рейтинг темы: голосов - 18, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 26.10.2014
Сообщений: 171

Обновление dataGridView с использованием UpdateCommand

30.04.2016, 15:31. Показов 4175. Ответов 28
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Данные в dataGridView заносятся из БД SQL запросом, который связывает несколько таблиц и создает 2 новых столбца.После изменения данных в dataGridView(изменение данных в желтой ячейке, после который автоматически изменяются данные в красных ячейках ) необходимо сохранить все изменения в БД. Знаю что необходимо сформировать UPDATE с использованием UpdateCommand, но не знаю как это сделать.
Занесение данных в dataGridView
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    string zp = ("SELECT     TOP (100) PERCENT dbo.Cars.Registration_number, dbo.Drivers.Name, dbo.Drivers.Surname, dbo.Brands.Capacity, dbo.Brands.Load_capacity, dbo.Object_work.Number_flights," +
                        "  dbo.Brands.Capacity * dbo.Object_work.Number_flights AS Total_Capacity, dbo.Brands.Load_capacity * dbo.Object_work.Number_flights AS Total_Load_capacity " +
 
                         " FROM         dbo.Brands INNER JOIN" +
                         " dbo.Cars ON dbo.Brands.ID_Brand = dbo.Cars.ID_Brand INNER JOIN" +
                         " dbo.Drivers ON dbo.Cars.ID_Cars = dbo.Drivers.ID_Car INNER JOIN" +
                         " dbo.Waybill ON dbo.Drivers.ID_Driver = dbo.Waybill.ID_Driver INNER JOIN" +
                         " dbo.Object_work ON dbo.Waybill.ID_Waybill = dbo.Object_work.ID_Waybill INNER JOIN" +
                         " dbo.Object ON dbo.Waybill.ID_Object = dbo.Object.ID_Object" +
                         " WHERE     (dbo.Object.Name_Object = '" + obekt + "')");
 
 
                 adapter = new SqlDataAdapter(zp, cn);
                 ds = new DataSet();
                 adapter.Fill(ds);
              dataGridView1.DataSource = ds.Tables[0];
Миниатюры
Обновление dataGridView с использованием UpdateCommand  
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.04.2016, 15:31
Ответы с готовыми решениями:

обновление dataGridView
Помогите, пожалуйста!!! Есть две формы на первой dataGridView, а на второй я добавляю данные. Написала процедуру обновления: ...

Обновление DataGridView
Добрый день! Нужна помощь) Есть таблица в базе данных, которую я отображаю через listbox, но при подгрузке информации на listbox, она...

Обновление DataGridView
Доброго времени суток! Помогите с курсовой. У меня есть 2 формы. 1. Автомобиль 2. Штрафы Есть общий столбец "ИИН...

28
0 / 0 / 0
Регистрация: 26.10.2014
Сообщений: 171
07.05.2016, 11:18  [ТС]
Студворк — интернет-сервис помощи студентам
Igr_ok, добавил ID_Object_work. Но уже выводит похожую ошибку. Только теперь ожидает параметр Number_flights который не был указан. Хотя Number_flights есть в запросе и выводится в dgv.
0
785 / 616 / 273
Регистрация: 04.08.2015
Сообщений: 1,713
07.05.2016, 11:21
Прикрепляйте проект, а то это затянется надолго)
1
0 / 0 / 0
Регистрация: 26.10.2014
Сообщений: 171
07.05.2016, 11:27  [ТС]
Igr_ok, это да) А прикрепить только саму программу? Базу не получится же вроде.Только если резервную копию.
Вложения
Тип файла: rar Kyrsach.rar (52.9 Кб, 4 просмотров)
0
785 / 616 / 273
Регистрация: 04.08.2015
Сообщений: 1,713
07.05.2016, 12:53
С локальной БД было бы проще, но попробуем так. Проверьте, будет ли работать и если будет ошибка, то давайте скрин.
Вложения
Тип файла: zip Kyrsach.zip (69.8 Кб, 8 просмотров)
1
0 / 0 / 0
Регистрация: 26.10.2014
Сообщений: 171
07.05.2016, 13:16  [ТС]
Igr_ok, та же ошибка.
Миниатюры
Обновление dataGridView с использованием UpdateCommand  
0
785 / 616 / 273
Регистрация: 04.08.2015
Сообщений: 1,713
07.05.2016, 15:52
Лучший ответ Сообщение было отмечено Zyf21 как решение

Решение

Попробуйте так
C#
1
2
3
adapter.UpdateCommand.Parameters.Add("@Number_flights", SqlDbType.Int, 4, "Number_flights");
SqlParameter param = adapter.UpdateCommand.Parameters.Add("@ID_Object_work", SqlDbType.Int, 4, "ID_Object_work");
param.SourceVersion = DataRowVersion.Original;
1
0 / 0 / 0
Регистрация: 26.10.2014
Сообщений: 171
07.05.2016, 16:08  [ТС]
Igr_ok, рабоооотает. Только последнее изменённое значение не сохраняется.Например, в столбце меняются первые три ячейки, но изменения сохранятся только в первых двух.
0
785 / 616 / 273
Регистрация: 04.08.2015
Сообщений: 1,713
07.05.2016, 16:51
Цитата Сообщение от Zyf21 Посмотреть сообщение
Только последнее изменённое значение не сохраняется.
Изменение происходит только после того, как редактируемая ячейка/строка теряет фокус. Меняйте значение не в гриде, а в источнике данных, тогда всё будет корректно работать.
C#
1
2
DataRow row = (dataGridView1.CurrentRow.DataBoundItem as DataRowView).Row;
row[column]=Convert.ToInt32(row[column])+1;
1
0 / 0 / 0
Регистрация: 26.10.2014
Сообщений: 171
07.05.2016, 17:02  [ТС]
Igr_ok, все работает! Спасибо вам большое за помощь и за потраченное время.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.05.2016, 17:02

Обновление dataGridView
Как првильна обновить dataGridView1. зчитывую з ХМЛ таким кодом XmlDataDocument xmlDatadoc = new XmlDataDocument(); ...

Обновление DataGridView
Доброго времени суток. Дело в том, что у меня не получается обновить DataGridView из другой формы. Начну с того, что у меня есть 2 формы....

DataGridView и обновление БД
Вопрос конечно уже поднимался, но тем не менее прошу помощи, так как до конца не могу разобраться. Есть две формы - на одной...

Обновление dataGridView
Добрый день! Подскажите пожалуйста как реализовать обновление dataGridView (чтобы выводились все записи БД, в том числе и только что...

DataGridView и обновление бд
Доброго времени суток. Я наверное повторяюсь... но много тем читал про то как сохранить изменения в бд после изменений в dataGridView. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
29
Ответ Создать тему
Новые блоги и статьи
Нейтральные знания ..., ... чистая наука. Пока что-то проходит модерацию на Хабре, стоит развить мысль ...
Hrethgir 20.07.2026
К таким радикальным взглядам я конечно в той публикации не приходил, но чтобы скоротать вечер, решил углубиться немного. 1. Почему показания термометра заряжены целью? Цель заложена в самом. . .
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения. https:/ / habr. com/ ru/ sandbox/ 295048/ По ссылке 403. Не очень информативно такую ссылку постить. Запись от Usaga размещена Сегодня в 06:46 . . .
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0) Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона Уважаемые коллеги! В продолжение. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru