Сервер баз данных InterBase Использование ADO

Тригонометрические и
гиперболические
подстановки
Физические приложения интегралов
Примеры вычисления производной
Сборочная единица
Сопряжение
Конструкторская документация
Позиционные и метрические
задачи
Рисование средствами PageMaker
Создание новой публикации
Шаблоны
Специальные эффекты
Верстка книг
Цветное оформление публикации
Назначение цвета
Корректура
Сотрудничество с типографией
Администрирование доменов
Средства безопасности
Альбом по схемотехнике
Офисный пакет Word, Access,
Excel практика использования
Технологии программирования
Кластерные вычисления
кластерный компьютер
Типичный кластер
Коммуникационное программное обеспечение
Интерфейс передачи сообщений
Аппаратные метрики
Приемы повышения производительности
масштабируемая система
Двоичные числа
Двоичная арифметика
Программирование на языке ассемблера
Процессор 8088
Адресация сегментов данных
Режим адресации
арифметические команды
Условные переходы
Вызовы подпрограмм
Ассемблер
Команды трассера
Технологии доступа к данным
Сервер баз данных
Сервер приложения
Клиент многозвенного распределенного приложения
Генератор отчетов
Технологии программирования
Потоки и процессы

  • На странице InterBase Палитры компонентов содержатся компоненты доступа к данным, адаптированные для работы с сервером InterBase и объединенные названием InterBase Express.
  • Механизм доступа к данным InterBase Express Для компонентов InterBase Express соединение с сервером БД осуществляет компонент TIBDatabase.
  • Компонент TIBDatabase Так как для доступа к базе данных компонентам InterBase Express не требуется BDE, то для создания соединения используется всего одно свойство DatabaseName.
  • Компонент TIBTransaction инкапсулирует средства управления транзакцией при работе с сервером InterBase. Для этого он должен быть связан с компонентом TiBDatabase при помощи своего свойства
  • Компоненты доступа к данным Так как компоненты InterBase Express используют для получения набора данных собственный механизм, то иерархия классов-предков включает только обязательный для всех наборов данных TDataSet класс TiBCustomDataSet, который, собственно, и инкапсулирует механизм доступа InterBase Express
  • Область дескрипторов XSQLDA Запрос может иметь собственные параметры, которые должны содержаться в свойстве Params. Однако, в отличие от обычного компонента запроса, в InterBase Express это свойство представляет собой экземпляр класса TIBXSQLDA
  • Структура XSQLVAR Рассмотренная выше область дескрипторов содержит возвращаемый результат запроса. Массив значений каждого возвращаемого поля сохраняется в отдельной структуре XSQLVAR.
  • Компонент TIBTable реализует все возможности стандартного компонента, инкапсулирующего таблицу. Дополнительно к ним можно обратить внимание на несколько полезных свойств и методов.
  • Компонент TIBQuery выполняет все стандартные функции компонента запроса и наследует возможности класса TiBCustomDataSet.
  • Компонент TIBStoredProc
  • Компонент TIBDataSet предназначен для представления в приложениях наборов данных от сложных запросов
  • Компонент TIBSQL предназначен для быстрого выполнения запросов SQL, поэтому не обеспечивает связи с компонентами представления данных
  • Обработка событий Клиентское приложение Delphi, работающее с сервером InterBase, имеет возможность отслеживать события, происходящие в базе данных и вызываемые другими процессами или приложениями. Для этого используется компонент TiBEvents.
  • Информация о состоянии базы данных В процессе отладки и выполнения клиентских приложений для сервера InterBase разработчик может получать подробную информацию об этих процессах.
  • Компонент TIBDatabaselnfo обладает большим числом свойств и методов, содержащих разнообразные сведения о состоянии БД
  • Компонент TIBSQLMonitor позволяет получать в клиентском приложении сообщения от сервера о выполняемых им операциях. Для этого используется метод-обработчик компонента
  • Использование ADO средствами Delphi
    • Использование ADO средствами Delphi >Наряду с традиционными инструментами доступа к данным Borland Database Engine и ODBC в приложениях Delphi можно применять технологию Microsoft ActiveX Data Objects (ADO), которая основана на возможностях СОМ, а именно интерфейсов OLE DB.
    • Основы ADO Технология Microsoft ActiveX Data Objects обеспечивает универсальный доступ к источникам данных из приложений БД. Такую возможность предоставляют функции набора интерфейсов, созданные на основе общей модели объектов СОМ и описанные в спецификации OLE DB.
    • Перечислители Объекты- перечислители обеспечивают поиск любых объектов ADO, которые имеют доступ к источникам данных. При этом другие перечислители также видны в данном перечислителе.
    • Объекты соединения с источниками данных Внутренний механизм ADO, обеспечивающий соединение с хранилищем данных, использует два типа объектов. Это объекты-источники данных и объекты-сессии.
    • Сессия Из объекта-источника данных можно создавать объекты-сессии
    • Транзакции Управление транзакциями в OLE DB реализовано на двух уровнях. Во-первых, всеми необходимыми методами обладает объект сессии. Он имеет интерфейсы ITransaction, ITransactionJoin, ITransactionLocal, ITransactionObject.
    • Наборы рядов Объект-набор рядов является основным объектом ADO, обеспечивающим работу с данными. Он инкапсулирует совокупность рядов из источника данных, механизмы навигации по рядам и поддержания рядов в актуальном состоянии.
    • Команды Программные средства ADO были бы неполными, если бы не имели возможности использовать для работы с данными язык SQL. Операторы DML и DDL, ряд специальных операторов ADO носят общее название текстовых команд.
    • Провайдеры ADO обеспечивают соединение приложения, использующего данные через ADO, с источником данных (сервером SQL, локальной СУБД, файловой системой и т. д.). Для каждого типа хранилища данных должен существовать провайдер ADO.
    • Реализация ADO в Delphi Механизм доступа к данным через ADO и многочисленные объекты и интерфейсы реализованы в VCL Delphi в виде набора компонентов, расположенных на странице ADO.
    • Компоненты ADO Компонент TADOConnection вобрал возможности перечислителя, источника данных и сессии с возможностями обслуживания транзакций.
    • Механизм соединения с хранилищем данных ADO Компоненты доступа к данным ADO могут использовать два варианта подключения к хранилищу данных. Это стандартный метод ADO и стандартный метод Delphi.
    • Компонент TADOConnection предназначен для управления соединением с объектами хранилища данных ADO. Он обеспечивает доступ к хранилищу данных компонентам ADO, инкапсулирующим набор данных
    • Наборы данных ADO На странице ADO Палитры компонентов Delphi, кроме компонентов соединения есть стандартные компоненты, инкапсулирующие набор данных и адаптированные для работы с хранилищем данных ADO
    • Класс TCustomADODataSel инкапсулирует механизм доступа к хранилищу данных через ADO. Этот класс наполняет абстрактные методы общего предка TDataSet функциями конкретного механизма доступа к данным.
      • Набор данных Перед открытием набора данных необходимо установить тип используемой при редактировании записей блокировки
      • Курсор набора данных Для набора данных ADO в зависимости от его назначения можно выбрать тип и местоположение используемого курсора
      • Локальный буфер Значение свойства есть число записей, помещаемых в локальный буфер, и оно не может быть меньше 1. Очевидно, что при достаточно большом размере буфера компонент будет обращаться к источнику данных не так часто, но при этом большой буфер заметно замедлит открытие набора данных
      • Состояние записи Класс TCustomADODataSet обладает дополнительными возможностями, которые позволяют отслеживать состояние каждой записи.
      • Фильтрация Помимо обычной фильтрации , основанной на свойствах Filter, Filtered и методе-обработчике onFilterRecord, класс TCustomADODataSet предоставляет разработчику дополнительные возможности.
      • Поиск Быстрый и гибкий поиск по полям текущего индекса набора данных обеспечивает метод
      • Сортировка Если порядок сортировки не указан, по умолчанию задается прямой порядок. Доменом называется множество атомарных значений одного и того же типа.
      • Команда ADO Для выполнения запросов к источнику данных любой компонент ADO инкапсулирует специальный объект команды ADO.
      • Групповые операции Как уже рассказывалось выше, наборы данных ADO используют на клиентской стороне локальный кэш для хранения данных и сделанных изменений. Благодаря наличию этого кэша и появилась возможность реализовать групповые операции.
    • Параметры Многие компоненты ADO, инкапсулирующие набор записей, должны обеспечивать применение параметров запросов. Для этого в них используется специальный класс TParameters.
      • Класс TParameters Главное, для чего предназначен класс TParameters, — содержать список параметров. Индексированный список параметров представлен свойством property Items[Index: Integer]: TParameter;
      • Класс ТParameter инкапсулирует отдельный параметр
    • Компонент TADODataSet предназначен для представления набора данных из хранилища данных ADO. Он прост в использовании, имея только несколько собственных свойств и методов, и применяет функции своего предка —класса TCustomADODataSet.
    • Компонент TADOTable обеспечивает использование в приложениях Delphi таблиц БД, подключенных через провайдеры OLE DB
    • Компонент TADOQuery обеспечивает применение запросов SQL при работе с данными через ADO. По своей функциональности он подобен стандартному компоненту запроса
    • Компонент TADOStoredProc позволяет использовать в приложениях Delphi, обращающихся к данным через ADO, хранимые процедуры. Он подобен стандартному компоненту хранимой процедуры
    • Команды ADO Команде ADO, которой мы уделяли так много внимания в этой главе в VCL Delphi, соответствует компонент TADOCormand.
    • Объект ошибок ADO При рассказе о компонентах ADO в данной главе мы довольно часто упоминали об объектах ошибок ADO. Эти объекты содержат информацию об ошибке, возникшей при выполнении операции каким-либо объектом ADO.
    • Пример приложения ADO Теперь попробуем применить на практике представленную в этой главе информацию о реализации ADO в Delphi. В качестве примера создадим простое приложение ADO Demo, которое "умеет" отображать пару таблиц БД, сохранять изменения при помощи групповых операций, сортировать записи и устанавливать фильтры на выбранные записи
    • Соединение с источником данных Для связывания приложения с источником данных используем компонент TADOConnection и настроим соединения, щелкнув на кнопке свойства connectionstring в Инспекторе объектов.
    • Групповые операции Компонент tbiindustry предназначен для выполнения групповых операций. Поэтому его свойство LociType имеет значение itBatchOptimistic. Для свойства CursorLocation установлено значение ciuseclient, чтобы обеспечить использование набора данных на клиенте
    • Фильтрация Для фильтрации записей в наборе данных tbiindustry используется метод FiiterOnBookmark. Пользователь должен выбрать интересующие его записи в компоненте dbgindustry (он работает в режиме dgMuitiSelect).
    • Сортировка создана также для набора данных tbiindustry.
  • Программирование на языке ассемблера