| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > .NET для новичков > Открыть датасет |
| Автор: Akella 16.3.2008, 16:14 | ||
| Не знаю, как бы правильно обозвать нужно было тему. В общем код в дельфи выглядит так:
Как открыть набор данных в C# (MSVC2008) Может я немного наглею, но всё же хочу спросить. Может есть у кого примеры работы с БД в C# (MSVS + MS SQL), например примеры добавления, удалание, редактирования данных через запросы, хранимки. Спасибо. |
| Автор: thomas 16.3.2008, 22:35 | ||
| Akella, Приветствую.
Если честно, то не понял, что вы имеете в виду? Что значит открыть? Можно создать набор данных выполнив sql-запрос к базе данных, можно так же добавть,отредактировать или удалить запись в наборе данных. Но вот ОТКРЫТЬ. А вообще можно пройти в http://forum.vingrad.ru/forum/dotnet-net-db-database.html форума и посмотреть подходящие темы. Пример просили, пожалуйста. Упражнение из школы. Коменты на русском присутствуют. Переменные правда поименованы на Фламандском. Будут вопросы задавайте не стесняйтесь. С наилучшими пожеланиями. |
| Автор: Akella 16.3.2008, 23:44 | ||
| Спасибо, конечно за пример, но.... нет у меня этой базы: D:\vti\Margo\cyberpro.mdb Добавлено через 2 минуты и 32 секунды В базе уже есть таблица, её мне нужно отобразить в гриде. Отобразить в гриде таблицу - это я называю ОТКРЫТЬ набор данных. Добавлено через 7 минут и 20 секунд Просто мне привычнее кинуть на форму несколько контролов, настроить соединение в дизайне, а потом по нажатию на кнопку выполнить что-то вроде:
|
| Автор: Optimus 17.3.2008, 00:16 | ||
Пример для базы Eshop, но можете сделать для своей базы в ней есть таблица Monitors со столбцами: MonitorName, Description, Picture На форме есть: Button: button1, и DataGridView: dataGridView1
кликаем по button'у что бы отобразить DataGridView |
| Автор: Akella 17.3.2008, 00:30 | ||
| Вроде с дизайном я разобрался, всё отображается. Выполняю всего-лишь одну строку
Добавлено через 1 минуту и 36 секунд В sqlDataAdapter1 сгенерированы все запросы. Что нужно делать, что-бы грид сам сохранял в базу введенные мню значения. Редактирую грид непосредственно в нём самом. |
| Автор: vponomarov 17.3.2008, 10:39 | ||
в sqlDataAdapter1 нужно прописать insertCommand и updateCommand. идея точно такая же как и при создании selectCommand, только вместо select че-то там... пишешь insert into... update... и после окончания редактирования данных необходимо провести синхронизацию данных sqlDataAdapter1.Update() |
| Автор: Akella 17.3.2008, 11:46 | ||
неужели я неясно написал, что это сделано? Добавлено через 48 секунд ну не запросы, а команды, так понятнее |
| Автор: vponomarov 17.3.2008, 12:03 | ||
не вопрос! раз все сделано - вперд обновлять записи! |
| Автор: Akella 17.3.2008, 12:23 |
| запись в базу не сохраняется |
| Автор: vponomarov 17.3.2008, 12:26 | ||
DataAdapter.Update("имя таблицы") делал? |
| Автор: Akella 17.3.2008, 23:43 |
это сохранение? или просто обновление таблицы? |
| Автор: vponomarov 18.3.2008, 10:15 | ||
это синхронизация данных. т.е. новые записи будут вставлены в таблицу, измененные проапдейтятся, а удаленные будут удалены. |
| Автор: Akella 18.3.2008, 12:22 |
| т.е. что-то вроде commit? |
| Автор: Voyager 18.3.2008, 16:05 |
| Что-то вроде. DataAdapter.Update записывает изменения, которые сделаны в локальном наборе данных, в базу данных (как и написали - синхронизация). |
| Автор: Akella 18.3.2008, 16:25 |
| Т.е. я спокойно могу удалять, добавлять, изменять, опять удалять, опять изменять, а потом сделать update? или после каждого изменения/добавления или удаление нуна делать update? |
| Автор: vponomarov 18.3.2008, 18:25 | ||
нет, update нужно делать после завершения всех манипуляций с записями |
| Автор: Akella 18.3.2008, 21:31 | ||||
в итоге
Добавлено через 4 минуты и 45 секунд Вот такая связка: sqlConnection1 sqlDataAdapter1 db1DataSet db1DataSetBindingSource dataGridView1 |
| Автор: vponomarov 18.3.2008, 23:49 |
| сорри, нужно передавать ДатаТэйбл а не имя таблицы в качестве аргумента методу апдэйт |