Однако для второй строки метод Update автоматически вызовет надлежащую команду данных (DataCommand) и обновит на ее основе соответствующую строку в базе данных. Синтаксис SQL-запроса будет зависеть от диалекта языка SQL, поддерживаемого основным хранилищем данных. Но независимо от синтаксиса сама структура SQL-запроса будет следующая.
Q Будет задействован SQL-запрос с предложением UPDATE. Адаптер данных знает (OleDbDataAdapter ИЛИ SQLDataAdapter), ЧТО Предложение UPDATE применяется для тех строк, свойства Rowstate которых имеет значение Modified.
Q В SQL-запрос будет включено предложение WHERE, указывающее, что обновляться будет строка, для которой CustomerID='c400'. Эта часть SQL-запроса отличает целевую строку от всех других строк, потому что поле CustomerlD является первичным ключом таблицы базы данных. Информация для предложения WHERE будет получена не из текущей, а из оригинальной (первоначальной) версии записи (DataRowVersion.Original), потому что в текущей версии записи пользователь мог изменить значение первичного ключа.
Q В SQL-запрос будет включено предложение SET, для того, чтобы установить новые значения столбцов в соответствующей записи таблицы базы данных.
^ Примечание ^
Если у адаптера данных в свойстве UpdateCommand было задано имя хранимой процедуры, то вместо SQL-запроса будет вызвана хранимая процедура с соответствующими параметрами.
Передача параметров
Значения колонок для записей, которые будут модифицированы в базе данных, обычно передаются через метки-заполнители. Когда вызывается на выполнение метод update адаптера данных, то он по сути дела выполняет SQL-инструкцию UPDATE, которая в свою очередь нуждается в присвоении меткам-заполнителям конкретных значений. Эти значения SQL-инструкция получает из коллекции параметров (Parameters) соответствующей команды данных (в данном конкретном случае задействована команда UpdateCommand адаптера данных).
Если для генерирования адаптера данных был задействован соответствующие мастера Visual
Опубликовал vovan666
June 09 2013 06:36:14 ·
0 Комментариев ·
3639 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.