Пошаговое руководство. Сохранение данных с помощью методов DBDirect адаптера таблицы
В этом пошаговом руководстве содержатся подробные инструкции по выполнению инструкций SQL непосредственно с базой данных с помощью методов DBDirect объекта TableAdapter. Методы DBDirect объекта TableAdapter предоставляют высокий уровень контроля над обновлением базы данных. С их помощью можно выполнить конкретные инструкции SQL и хранимые процедуры, вызывая отдельные методы Insert, Update и Delete по мере необходимости (в отличие от перегруженного метода Update, выполняющего функции UPDATE, INSERT и DELETE в одном вызове).
В процессе выполнения этого пошагового руководства вы научитесь:
Создайте новое приложение Windows.
Создавать и настраивать набор данных при помощи мастер настройки источника данных.
Выбирать элемент управления, создаваемый на форме при перетаскивании элементов из окна Источники данных. Дополнительные сведения см. в разделе Практическое руководство. Установка элемента управления, создаваемого при перетаскивании из окна "Источники данных".
Создавать элементы управления с привязкой к данным путем перетаскивания элементов из окна Источники данных на форму.
Добавлять методы для непосредственного получения доступа к базам данных и выполнения вставок, обновлений и удалений непосредственно с базой данных.
Обязательные компоненты
Для выполнения этого пошагового руководства потребуется следующее.
- Доступ к образцу базы данных "Борей". Дополнительные сведения см. в разделе Практическое руководство. Установка образцов баз данных.
Создание приложения Windows
Первым шагом является создание Приложения Windows.
Чтобы создать новый проект Windows:
В Visual Studio из меню Файл создайте новый Проект.
Назовите проект TableAdapterDbDirectMethodsWalkthrough.
Выберите Приложение Windows и нажмите кнопку OK. Дополнительные сведения см. в разделе Создание приложения для Windows.
Проект TableAdapterDbDirectMethodsWalkthrough создается и добавляется в Обозреватель решений.
Создание источника данных из вашей базы данных
На этом шаге с помощью Мастера настройки источника данных создается источник данных на основе таблицы Region в образца базы данных "Борей". Для создания подключения необходимо иметь доступ к демонстрационной базе данных Northwind. Сведения о настройке учебной базы данных Northwind см. в разделе Практическое руководство. Установка образцов баз данных.
Для создания источника данных,
В меню Данные выберите команду Показать источники данных.
Чтобы запустить Мастер настройки источника данных, выберите элемент Добавить новый источник данных в окне Источники данных.
На странице Выбор типа источника данных выберите элемент База данных и нажмите Далее.
На странице Выбор подключения базы данных выполните одно из следующих действий:
Если подключение к учебной базе данных Northwind доступно в раскрывающемся списке, то выберите его.
– или –
Выберите Новое подключение для открытия диалогового окна Добавить/изменить подключение. Дополнительные сведения см. в разделе Диалоговое окно "Добавить/Изменить подключение" (вкладка "Общие").
Если базе данных требуется пароль, выберите параметр для включения конфиденциальных данных и щелкните Далее.
Щелкните Далее на странице Сохранить строку подключения в файле конфигурации приложения.
Разверните узел Таблицы на странице Выбор объектов базы данных.
Выберите таблицу Region и нажмите кнопку Готово.
NorthwindDataSet добавляется к проекту, и таблица Region отображается в окне Источники данных.
Добавление элементов управления на форму для отображения данных
Создайте элементы управления с привязкой к данным путем перетаскивания элементов из окна Источники данных на форму.
Для создания элементов управления с привязкой к данным в формах Windows Form
Перетащите главный узел Регион из окна Источники данных на форму.
На форме появится элемент управления DataGridView и панель инструментов (BindingNavigator) для перемещения по записям. В области компонента отобразятся NorthwindDataSet, RegionTableAdapter, BindingSource и BindingNavigator.
Чтобы добавить кнопки, которые будут вызывать отдельные методы DbDirect объекта TableAdapter
Перетащите три элемента управления Button из Панели элементов на Form1 (под RegionDataGridView).
Задайте следующие свойства Имя и Текст на каждой кнопке.
Имя
Текст
InsertButton
Вставить
UpdateButton
Обновить
DeleteButton
Удалить
Чтобы добавить код для вставки новых записей в базу данных
Дважды щелкните InsertButton, чтобы создать обработчик событий для события Click и открыть форму в редакторе кода.
Замените обработчик событий InsertButton_Click следующим кодом:
Private Sub InsertButton_Click() Handles InsertButton.Click Dim newRegionID As Integer = 5 Dim newRegionDescription As String = "NorthEastern" Try RegionTableAdapter1.Insert(newRegionID, newRegionDescription) Catch ex As Exception MessageBox.Show("Insert Failed") End Try RefreshDataset() End Sub Private Sub RefreshDataset() Me.RegionTableAdapter1.Fill(Me.NorthwindDataSet1._Region) End Sub
private void InsertButton_Click(object sender, EventArgs e) { Int32 newRegionID = 5; String newRegionDescription = "NorthEastern"; try { regionTableAdapter1.Insert(newRegionID, newRegionDescription); } catch (Exception ex) { MessageBox.Show("Insert Failed"); } RefreshDataset(); } private void RefreshDataset() { this.regionTableAdapter1.Fill(this.northwindDataSet1.Region); }
Чтобы добавить код для обновления записей в базе данных
Дважды щелкните UpdateButton, чтобы создать обработчик событий для события Click и открыть форму в редакторе кода.
Замените обработчик событий UpdateButton_Click следующим кодом:
Private Sub UpdateButton_Click() Handles UpdateButton.Click Dim newRegionID As Integer = 5 Try RegionTableAdapter1.Update(newRegionID, "Updated Region Description", 5, "NorthEastern") Catch ex As Exception MessageBox.Show("Update Failed") End Try RefreshDataset() End Sub
private void UpdateButton_Click(object sender, EventArgs e) { Int32 newRegionID = 5; try { regionTableAdapter1.Update(newRegionID, "Updated Region Description", 5, "NorthEastern"); } catch (Exception ex) { MessageBox.Show("Update Failed"); } RefreshDataset(); }
Чтобы добавить код удаления записей из базы данных
Дважды щелкните DeleteButton, чтобы создать обработчик событий для события Click и открыть форму в редакторе кода.
Замените обработчик событий DeleteButton_Click следующим кодом:
Private Sub DeleteButton_Click() Handles DeleteButton.Click Try RegionTableAdapter1.Delete(5, "Updated Region Description") Catch ex As Exception MessageBox.Show("Delete Failed") End Try RefreshDataset() End Sub
private void DeleteButton_Click(object sender, EventArgs e) { try { regionTableAdapter1.Delete(5, "Updated Region Description"); } catch (Exception ex) { MessageBox.Show("Delete Failed"); } RefreshDataset(); }
Запуск приложения
Чтобы выполнить приложение
Нажмите клавишу F5 для запуска приложения.
Нажмите кнопку Вставить и убедитесь, что новая запись отображается в сетке.
Нажмите кнопку Обновить и убедитесь, что запись обновляется в сетке.
Нажмите кнопку Удалить и убедитесь, что запись удаляется из сетки.
Следующие действия
В зависимости от требований приложения существуют несколько шагов, которые, возможно, потребуется выполнить после создания формы с привязкой к данным. Ниже приводится перечень рекомендаций, позволяющих улучшить полученный результат.
Добавление функциональных возможностей поиска на форму. Дополнительные сведения см. в разделе Практическое руководство. Добавление параметризованного запроса в приложение Windows Forms.
Добавление дополнительных таблиц в набор данных путем выбора Настроить набор данных с помощью мастера в окне Источники данных. Можно добавить элементы управления, отображающие связанные данные, перетащив соответствующие узлы на форму. Дополнительные сведения см. в разделе Практическое руководство. Отображение связанных данные в приложении Windows Forms.
См. также
Задачи
Практическое руководство. Непосредственный доступ к базе данных с помощью адаптера таблицы
Практическое руководство. Создание запросов TableAdapter
Практическое руководство. Сохранение данных из объекта в базе данных
Основные понятия
Общие сведения об адаптере таблиц
Привязка элементов управления Windows Forms к данным в Visual Studio
Привязка элементов управления к данным в Visual Studio
Другие ресурсы
Подключение к данным в Visual Studio
Подготовка приложения к получению данных