Обновление баз данных из наборов данных
После того, как были сделаны изменения в наборе данных, их можно передать источнику данных. Обычно это делается путем вызова метода Update адаптера данных. Данный метод в цикле просматривает все записи таблицы и определяет, какие операции необходимо выполнить (обновление, добавление или удаление), и, если таковые вообще имеются, выполняет соответствующие команды.
Как обновления передаются источнику данных.
Для простоты иллюстрации обновления базы данных предположим, что набор данных содержит одну таблицу, а в результате работы приложения из базы данных в объект DataSet было выбрано две строки (табл. 2.15).
Таблица 2.15. Строки объекта DataSet до обновления в них информации
RowState CustomerID Name Stilus
(Unchanged) c2"" Robert Lyon
(Unchanged) c400 Nancy Buchanan Pending
В приложении пользователь во второй строке изменяет статус клиента Nancy Buchanan с Pending на Preferred. В результате этого изменения значение свойства DataRow.RowState для второй строки изменится с Unchanged на Modified. Значение данного свойства для первой строки остается неизменным (unchanged). Результирующий вид таблицы данных в объекте DataSet показан в табл. 2.16.
Таблица 2.16. Строки объекта DataSet после обновления второй строки
RowState CustomerID Name Si II us
Unchanged c200 Robert Lyon Goo,]
Modified c400 Nancy Buchanan Preferred
В приложении после этого вызывается метод update для того, чтобы передать обновленный набор данных назад к базе данных. Данный метод поочередно просматривает каждую строку. Для первой строки, метод не применяет никакого SQL-запроса (команду DataCommand), потому что эта строка не изменялась с тех пор, как была получена из базы данных (она имеет признак Unchanged).
Опубликовал vovan666
June 09 2013 06:37:08 ·
0 Комментариев ·
4382 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.