Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/22: Рейтинг темы: голосов - 22, средняя оценка - 4.50
5 / 5 / 0
Регистрация: 15.04.2010
Сообщений: 130

Сохранение изминений в DataGridView

16.11.2010, 12:36. Показов 4266. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добавил источник данных к проэкту, кинул на форму DataGridView. Как теперь сохранить в БД то что я туда добавил. Например через кнопочку сохранить)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
16.11.2010, 12:36
Ответы с готовыми решениями:

Сохранение DataGridView
Здравствуйте, уважаемые форумчане. Имею приложение на Windows Forms, в которой имеется DataGridView. В нем, находится текст, который я...

Сохранение DataGridView
Помогите, как сохранить данные в дата грид, если дата грид не связана с бд, а создана автоматически в сишарпе, данные добавляются в нее, а...

Сохранение в Datagridview
Добрый вечер! Подскажите пожалуйста.. знаю что сохранять это командой Tableadapter.Update(dataset). это команда стоит на кнопке и все...

14
 Аватар для exlim
24 / 24 / 9
Регистрация: 15.11.2010
Сообщений: 95
16.11.2010, 12:41
Листинг бы глянуть.
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
16.11.2010, 13:50
Michey25, для адаптера,который заполняет таблицу, вызови метод Update()
0
5 / 5 / 0
Регистрация: 15.04.2010
Сообщений: 130
16.11.2010, 18:05  [ТС]
Цитата Сообщение от nio Посмотреть сообщение
Michey25, для адаптера,который заполняет таблицу, вызови метод Update()
т.е. для DataGridView?
из MSDN "Update - Вызывает перерисовку элементом управления недопустимых областей клиентской области. (Унаследовано от Control.)"
0
 Аватар для exlim
24 / 24 / 9
Регистрация: 15.11.2010
Сообщений: 95
16.11.2010, 18:07
Выложи код, как ты заполняешь DataGrid
0
5 / 5 / 0
Регистрация: 15.04.2010
Сообщений: 130
16.11.2010, 18:28  [ТС]
Цитата Сообщение от exlim Посмотреть сообщение
Выложи код, как ты заполняешь DataGrid
В Visual Studio 2010 (windows form) просто кидаю на форму DataGridView добавляю источник данных к проэкту , и в свойствах прикрепляю к нему dataset, вот и все.
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
16.11.2010, 18:50
Цитата Сообщение от Michey25 Посмотреть сообщение
из MSDN "Update - Вызывает перерисовку элементом управления недопустимых областей клиентской области. (Унаследовано от Control.)"
из MSDN :"DataAdapter.Update - Вызывает соответствующие операторы INSERT, UPDATE или DELETE для каждой вставленной, обновленной или удаленной строки в указанном объекте DataSet из DataTable с именем "Table"."
DataGridView всего лишь отображает данные, которые находятся в источнике (dataSet), поэтому обновление производится не из DataGridView, а из источника.
0
5 / 5 / 0
Регистрация: 15.04.2010
Сообщений: 130
16.11.2010, 19:27  [ТС]
Цитата Сообщение от nio Посмотреть сообщение
из MSDN :"DataAdapter.Update - Вызывает соответствующие операторы INSERT, UPDATE или DELETE для каждой вставленной, обновленной или удаленной строки в указанном объекте DataSet из DataTable с именем "Table"."
DataGridView всего лишь отображает данные, которые находятся в источнике (dataSet), поэтому обновление производится не из DataGridView, а из источника.
Т.е. мне нужно создавать объект класса dataAdapter идля него делать Update(DataSet1)?
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
16.11.2010, 20:12
Michey25, если у тебя данные уже попадают в DataGridView, значит и адаптер уже есть. В нижней части окна проектирования, должен быть его экземпляр (это невизуальный компонент).
0
5 / 5 / 0
Регистрация: 15.04.2010
Сообщений: 130
17.11.2010, 23:04  [ТС]
Цитата Сообщение от nio Посмотреть сообщение
Michey25, если у тебя данные уже попадают в DataGridView, значит и адаптер уже есть. В нижней части окна проектирования, должен быть его экземпляр (это невизуальный компонент).
Ну я понял что не визуальный, там есть TableAdapter, но когда делаю sigmaTableAdapter.Update(stal_v1_Data_Da taSet) изминения не сохраняются.
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
17.11.2010, 23:25
попробуй sigmaTableAdapter.Update(stal_v1_Data_Da taSet.имя_таблицы);
0
5 / 5 / 0
Регистрация: 15.04.2010
Сообщений: 130
19.11.2010, 16:07  [ТС]
Спасибо большое за помощь все работает.

Добавлено через 15 часов 19 минут
Еще такая проблема, сохраняются только новые строки а если изменить какую-нибудь из ранее существующих строк изминение не сохраниться...

Добавлено через 1 час 4 минуты
Следующая ошибка: Необработанное исключение типа "System.InvalidOperationException" произошло в System.Data.dll Дополнительные сведения: Для обновления требуется действительный UpdateCommand при передаче коллекции DataRow с измененными строками.
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
19.11.2010, 20:30
Цитата Сообщение от Michey25 Посмотреть сообщение
Для обновления требуется действительный UpdateCommand
Это и есть ответ на твой вопрос, в свойстве UpdateCommand отсутствуе текст запроса на обновление, еще бывают InsertCommand и DeleteCommand (надеюсь не нужно объяснять зачем)

Добавлено через 3 минуты
https://www.cyberforum.ru/sear... id=2285650
0
25 / 14 / 3
Регистрация: 01.12.2010
Сообщений: 69
01.12.2010, 17:28
Что можно ещё сделать в аналогичной ситуации, когда не сохраняются изменения?

При всавке datagrid на форму имеем сгенерированный код при нажатии на кнопку сохранить:

C#
1
2
3
 this.Validate();
 this.nameBindingSource.EndEdit();
 this.tableAdapterManager.UpdateAll(this.personalDataSet);
UpdateCommand (а так же Insert/Delete/Select) изначально уже заполнено для NameTableAdapter :

SQL
1
2
UPDATE [dbo].[Name] SET [Id] = @Id, [name] = @name, [familyname] = @familyname WHERE (([Id] = @Original_Id) AND ([name] = @Original_name) AND ([familyname] = @Original_familyname));
SELECT Id, name, familyname FROM Name WHERE (Id = @Id)
Но всё равно не удаётся добавить\удалить\редактировать источник данных.

tableAdapterManagerUpdateAll(this.person alDataSet.Name) - не помогает.
nameTableAdapter.Update(personalDataSet. Name) - тоже
0
10 / 10 / 1
Регистрация: 16.03.2011
Сообщений: 73
24.05.2011, 14:22
Цитата Сообщение от nio Посмотреть сообщение
DataAdapter.Update - Вызывает соответствующие операторы INSERT, UPDATE или DELETE для каждой вставленной, обновленной или удаленной строки в указанном объекте DataSet из DataTable с именем "Table"."
DataGridView всего лишь отображает данные, которые находятся в источнике (dataSet), поэтому обновление производится не из DataGridView, а из источника.
Помоги пожалуйста - у меня проблема, DataGrid на форме, его вручную заполняю, потом нажимаю на кнопку и выполняется такой код
this.Validate();
this.kategorySubjBindingSource.EndEdit() ;
this.tableAdapterManager.UpdateAll(this. iSPDnBDDataSet);
this.kategorySubjDataGridView.Enabled = false;
this.bindingNavigator.Enabled = false;
я его взял с кнопки навигатора и чуть добавил строк;
А проблема такая DataAdapter.Update работает замечательно, данные добавляются в базу, только потом DataGrid все записи показывает которые добавились, а мне он нужен только для того чтобы добовлять их в базу, чтобы после запуска формы дата грид все время был пустым.
Хотел посмотреть где этот метод UpdateAll лежит, не нашел... чтоб изменить его... Подскажи что делать, или мне самому писать запрос на добавление записей, циклами по каждой строке
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.05.2011, 14:22
Помогаю со студенческими работами здесь

Сохранение DataGridView в БД
Ребят как реализовать такую проблему: Я загружаю таблицу из файла Excel при помощи кода: private void button4_Click(object sender,...

Сохранение datagridview
Добрый вечер) возникла проблема при сохранении datagridview(в таблице 3 столбца(, но при сохранении сохраняется только первый столбец, а...

сохранение DataGridView
Здравствуйте. Помогите пожалуйста решить Такой момент: допустим есть у нас таблица с ней итерационно выполняются преобразования ...

Сохранение в БД из DataGridView
Есть БД 3 столбца и несколько строк. Загружаю их в datagridview так: using (var context = new Database1Entities()) // контекст...

Сохранение изменений DataGridView в БД
Привет, ребята! Возникла вот так проблема: При загрузке формы загружается база данных в DataGridView, потом без всяких дополнительных...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru