Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Вебмастеру -> Сеппа Д. -> "Microsoft ADO.NET" -> 252

Microsoft ADO.NET - Сеппа Д.

Сеппа Д. Microsoft ADO.NET — М.: Русская Редакция, 2003. — 640 c.
ISBN 5-7502-0223-2
Скачать (прямая ссылка): mcrsftado2003.pdf
Предыдущая << 1 .. 246 247 248 249 250 251 < 252 > 253 254 255 256 257 258 .. 260 >> Следующая

Внимание! На самом деле четко определенного набора гссбскзкнй к поставщикам данных .\El не существует. Отличный пример этому — поставщик SQL XML .NET Data Provider. Он реализует лишь часть объектов и конструкторов, предоставляемых поставщиками OLE DB .NETh SQL Client .NET.
К счастью, принципы работы поставщиков данных созданных специалистами Microsoft — OLE DB, SQL Client. ODBC и Oracle Client, практически одинаковы. Благодаря этому, я смог создать утилиты Ad Hoc Query Tool и DataAdaptcr Builder, одинаково хорошо работающие со всеми этими поставщиками.
Утилиты используют механизм Reflection и предполагают имена классов. Так, если при работе с утилитой Ad Hoc Query Tool применяется поставщик ODBC .NET Data Provider, утилита, чтобы обеспечить поддержку передачи обновлений в БД. ищет среди предоставляемых поставщиком классов классы, имена которых оканчиваются на CommanclBuildev. Утилита DataAdapter Builder точно так же ищет клас-
592 Приложения
сы, имена которых оканчиваются на DataAdapter. Кроме того, DataAdapter Builder проверяет наличие в объекте DataTahle. возвращенном методом 1>та1а'(Н/ег.(,е(-SchemaTable, специфических столбцов, чтобы определить, как генерировать логику обновления.
Поскольку (пока) четко определенного набора требований к поставщикам данных .МП нет, создание утилит, аналогичных записанным на прилагаемом к книге компакт-диске, можно считать неточной наукой, и я не могу дать гарантии, что они будут нормально работать с другими поставщиками данных
Передача обновлений
В окне Query есть флажок Updateable. Если он помечен, при выполнении запроса утилита Ad Hoc Query Tool создаст объект CommandBuilder, чтобы сгенерировать для этого запроса логику обновления. После того как логика будет успешно сгенерирована, в нижней части окна появится кнопка Submit Changes (рис, Б-4). Щелкните ее, и Ad Hoc Query Tool передаст с помощью объекта CommandBuilder изменения в БД, а также уведомит вас об исходе такой попытки обновления,
Параметры приложения
Утилита Ad Hoc Query Tool хранит свои параметры, в том числе и список ш.алв-щиков данных прошлых соединений и прошлых запросов, в объекте со строгим контролем типов. Если вам потребуется изменить эти параметры, воспользуйтесь командой Settings основного меню утилиты. При завершении работыутилита сохраняет свои параметры в XML-файл, находящийся в нликс\1 ч nmeiiis and ADO.NET\Ad Hoc Query
Tool\, а при загрузке — считывает их из него.
Утилита ADO.NET DataAdapter Builder
Объект CommandBuilder и мастер Data Adapter Configuration Wizard осуществляют удивительную задачу — генерируют логику обновления объекта DataAdapter, однако возможности каждого из них ограниченны. Объект CommandBuilder — весьма полезное средство времени выполнения, но он не генерирует код. Мастер Data Adapter Configuration генерирует код, но только для поставщиков
данных .КЕТ из состава NE i Framework. Ни объект, ни мастер не создают логику обновления, если в запросе нет полей первичного ключа.
Для решения этих задач и предназначена моя утилита ADO.NET DataAdapter Builder. Вам необходимо сгенерировать логику обновления, но поставщик OLE DB или драйвер ODBC не возвращает имен таблиц, столбцов и сведений о ключевых столбцах? Или требуется сгенерировать логику для объекта DataAdapter, не входящего в состав .NET Framework? Нет проблем.
Пользовательский интерфейс ADO.NET DataAdapter Builder аналогичен утилите Ad Hoc Query Tool. О работе диалогового окна Connect говорилось ранее. Вам нужно лишь ввести строку и выбрать требуемый поставщик данных
Утилита DataAdapter Builder отобразит форму, позволяющую вводить и выполнять запросы. Как и Ad Hoc Query Tool, DataAdapter Builder выполняет запросы и выводит их результаты, а также информацию схемы о наборе результатов.
Приложение Б Утилиты
Рис. 1,-6. Генерирование логики обновления средствами ADO.NET DataAdapter Builder
Основное различие утилит в том, что DataAdapter Builder позволяет вам определить логику обновления для объекта DataAdaptem выводит код на ADO.NET для создания этого объекта.
Определениелогикиобновления
Утилита DataAdapter Builder генерирует для объекта DataAdapter логику обновления, создавая на основе результатов вашего запроса параметризованные запросы INSERT, UPDATE и DELETE.
Чтобы управлять лошкоп, которую DataAdapter Builder генерирует для запросов UPDATE и DELETE, достаточно пометить флажок Concurrency Check (рис. Б-6). По умолчанию DataAdapter Builder использует в разделах WHERE этих запросов оригинальные значения всех столбцов. Можно ттокс гк что должны использоваться только столбцы первичного ключа или столбцы первичного ключа и столбцы со значениями типа timestamp.
Если пометить флажок Custom и выполнить запрос, откроется диалоговое окно, показанное на рис. Б-7. В нем отображается информация о столбцах и таблицах из схемы запроса, а также используемые при подключении символы-разделители.
Для управления столбцами в разделах SET и WHERE логики обновления объекта DataAdapter и с 11 о. 11, sу и 1 с доступные в сетке флажки. Не забывайте, что при этом стоит создать запрос UPDATE или DELETE, обновляющий несколько записей БД. Кроме того, в данном диалоговом окне можно указать имя обновляемой базовой таблицы.
Предыдущая << 1 .. 246 247 248 249 250 251 < 252 > 253 254 255 256 257 258 .. 260 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100