![]() |
|
Модераторы: gambit |
![]()
|
|
| csprogrammer |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 3.4.2006 Репутация: нет Всего: нет |
Здравствуйте. Использую Visual Studio 2005 и MS SQL 2005. Добавляю на форму DataGridView. Нажимаю на стрелку в правом верхнем углу (DqtaGridView Tasks) -> Choose Data Source -> Add Project Data Source -> выбираю БД (пусть mydb), соединение, таблицу (пусть mytable). В результате создаются 3 компонента: mydbDataSet, mytableBindingSource, mytableTableAdapter. После чего данные таблицы отображаются в гриде. Теперь хотелось бы их править через грид (и сохранять изменения в БД). При добавлении записи для этого достаточно выполнить:
mydbDataSet.mytableDataTable ch = (mydbDataSet.mytableDataTable)mydbDataSet.mytable.GetChanges(); mytableTableAdapter.Update(ch); При удалении эти строки не производят никакого эффекта. При изменении записи - ошибка: "Update requires a valid UpdateCommand when passed DataRow collection with modified rows." Смотрю описание класса, объектом которого является mytableTableAdapter. Ошибка уместная, т.к. для объекта SqlDataAdapter _adapter, входящего в состав mytableTableAdapter заданы SelectCommand и InsertCommand и не задана UpdateCommand. Но как её задать? Как это сделать в графическом дизайнере я не нашёл, а _adapter описан как private и, соответственно, программно это сделать тоже не удастся. |
|||
|
||||
| arilou |
|
|||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: 4 Всего: 61 |
Для того, чтобы студия автоматом генерила Update и DeleteCommand, надо чтобы в таблице присутствовал первичный ключ.
|
|||
|
||||
| csprogrammer |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 3.4.2006 Репутация: нет Всего: нет |
Нравится мне этот форум. И вообще хорошо, когда есть с кем парой реплик перекинуться. А то когда сидишь один программишь можно весь день над чепухой голову ломать. Ведь знал же, что нужно primary key подгружать (ды и оно, собственно, логично). И хотел было уже написать что primary key имеется, а потом думаю - дай проверю. Смотрю - ёлки палки! Identity задал, а как primary key пометить забыл! Спасибо за подсказку.
|
|||
|
||||
| arilou |
|
|||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: 4 Всего: 61 |
csprogrammer, рад приветстовать на самом лучшем форуме Рунета
|
|||
|
||||
| csprogrammer |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 3.4.2006 Репутация: нет Всего: нет |
vingrad forever
|
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Базы данных под .NET | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |