- •Основные понятия и терминология бд.
- •2. Логическое и физическое описание данных.
- •4. Классификация субд. Трехуровневая архитектура бд.
- •5. Эволюция концепций бд. Основные характеристики первого и второго этапов.
- •11. Реляционная модель бд. Транзакции, триггеры и хранимые процедуры, ссылочная целостность на триггерах.
- •17. Физическая организация данных в субд:
- •18.Физическая организация данных в субд: индексирование. Организация индексов в виде б-деревьев и инвертированных списков.
- •19. Распределенные бд. Хранилища данных.
- •20. Sql. Состав операторов языка.
- •21. Структурированный язык запросов (sql). Оператор select и вычисления.
- •22. Структурированный язык запросов (sql). Вложенные и многотабличные запросы.
- •23.Структурированный язык запросов (sql). Операторы манипулирования данными.
- •24.Подходы разработки программного обеспечения под ос Windows. Достоинства и недостатки.
- •25.Платформа .Net Framework. Достоинства и недостатки.
- •26.Платформа .Net Framework. Архитектура: fcl, bcl, clr, cil, сборки.
- •27.Платформа .Net Framework. Классификация типов, базовые операции программирования: приведение типов, вызов методов, свойства.
- •28.Ado.Net. Архитектура. DataProvider и DataSet.
- •29.Ado.Net. Соединение с бд, строка подключения, Connection, Command. Основные свойства и методы.
- •30.Ado.Net. Выполнение команд и запросов к бд. Основные свойства и методы: CommandType, ExecuteNonQuery(), ExecuteScalar(), ExecuteReader().
- •31.Ado.Net. Параметризированные запросы. SqlParameter. Основные свойства и методы.
- •32.Ado.Net. Чтение данных и объект DataReader. Основные свойства и методы.
- •33. Ado.Net. Рассоединенный набор данных DataSet. Схема данных.
- •34. Ado.Net. Заполнение рассоединенного набора данных. Адаптер данных SqlDataAdapter. Основные свойства и методы.
- •35. Ado.Net. Класс DataColumn. Основные свойства и методы.
- •36. Ado.Net. Класс DataRow. Основные свойства и методы.
- •37. Ado.Net. Класс DataTable. Основные свойства и методы
- •38. Ado.Net. Задание схемы набора данных вручную (тип и имя отдельных столбцов таблицы, ограничения на столбцы и связи между таблицами).
- •39. Ado.Net. Навигация, поиск и фильтрация данных в DataSet. Основные свойства и методы. Типизированный набор данных.
- •41. Ado.Net. Синхронизация набора данных с бд. Основные свойства и методы. Класс CommandBuilder.
- •42. Схема взаимодействия между браузером и web-сервером. Понятие статических и динамических web-страниц. Особенности asp.Net.
- •43. Asp.Net. Компоненты web-приложения. Структура файла *.Aspx.
41. Ado.Net. Синхронизация набора данных с бд. Основные свойства и методы. Класс CommandBuilder.
Пусть в наборе данных заносится информация из БД при помощи адаптера
SqlDataAdapter da = new SqlDataAdapter(…);
DataSet CD_Rent = new DataSet(“CD_Rent”);
da.Fill(CD_Rent, “Artists”);
Попытка выполнения кода вызовет исключительную ситуацию:
CD_Rent.Tables[“Artists”].Rows[3][“name”] = “Alex”;
da.Update(CD_Rent, “Artists”);
Программист может настроить необходимые команды вручную, но сущесвует класс CommandBuilder для автоматической генерации команд адаптера
Работа с ним происходит следующим образом:
1) Создаётся объект класса и связывается с определённым адаптером данных, у которого уже задана команда SelectComand.
2) После установки подобной связи CommandBuilder отслеживает событие обновления строки данных, которое происходит при вызове метода Update(), генерирует и выполняет необходимые SQL-команды на основе текста команды SELECT.
Построение команд для адаптера, с которым мы работаем используя CommandBuilder будет иметь вид:
// Создаём объект CommandBuilder и связываем его с адаптером
SqlCommandBuilder cb = newSqlCommandBuilder (da);
// И, собственно, всё! Можем работать с методом Update()
da.Update (CD_Rent, “Artists”);
CommandBuilder генерирует правильные команды обновления, если выполняются все следующие условия:
запрос возвращает данные только из одной таблицы
в таблице в БД определён первичный ключ
первичный ключ есть в результатах вашего запроса
Недостаток – объект класса CommandBuilder не предоставляет максимальной производительности.
Имя свойства или метода |
Описание: |
DataAdapter |
Свойство позволяет просмотреть или изменить объект DataAdapter сопоставленный с объектом CommandBuilder. Значение этого свойства можно задать в конструкторе объекта Command Builder |
DeriveParameters() |
Статический метод. Получать в качестве параметра объект-команду для вызова хранимой процедуры. На основании информации из БД заполняет коллекцию Parameters команды-параметра |
GetDeleteCommand |
Возвращает объект Command с логикой для свойства DeleteComman объекта DataAdapter |
GetInsertCommand() |
Возвращает Command с логикой для свойства InsertCommand объекта DataAdapter |
GetUpdateCommand() |
Возвращает объект Command с логикой для свойства UpdateCommand объекта DataAdapter |
QuotePrefix |
Содержит префикс, используемый CommandBuilder для имён таблиц и столбцов в генерируемых им запросах |
QuoteSuffix |
Содержит суффикс, используемый CommandBuilder для имён таблиц, и столбцов в генерируемых им запросах |
RefreshSchema() |
Указывает объекту CommandBuilder создать логику обновления заново. |