- •Федеральное агентство связи
- •Государственное образовательное учреждение высшего
- •Профессионального образования
- •«Поволжская государственная академия телекоммуникаций и информатики»
- •Разработка и эксплуатация удаленных баз данных
- •Конспект лекций
- •Введение
- •Раздел 1. Теория проектирования удаленных баз данных архитектуры удаленных бд Структурная схема терминов
- •Архитектуры бд
- •Локальная
- •Архитектура "файл-сервер"
- •Архитектура удаленных бд ("клиент-сервер")
- •Достоинства и недостатки различных архитектур приложений бд
- •Основные технологии доступа к данным Технология com (component object model)
- •Создание распределенных приложений на базе dCom
- •Технология corba (общая архитектура брокеров объектных запросов)
- •Технология midas
- •Доступ к данным по технологии ado
- •Технология com (component object model)
- •Составные части технологии com
- •Создание распределенных приложений на базе dCom
- •Технология midas
- •Доступ к данным по технологии ado
- •Введение в работу с удаленными бд
- •Организация сеанса связи с удаленной бд
- •Сервер interbase
- •Физическая организация базы данных формата InterBase
- •Типы данных в таблицах InterBase Типы столбцов таблиц формата InterBase
- •Организация сеанса связи с удаленной бд
- •Физическая организация удаленной бд
- •Создание и модификация таблиц Операции с таблицами
- •Операции с индексами
- •Графическое проектирование структуры бд Просмотры View
- •Создание бд
- •Создание и использование доменов
- •Компоненты доступа к данным. Запросы на выборку данных
- •Компоненты для доступа к данным и их отображения
- •Формирование запросов на выборку данных
- •Запросы на изменение данных Структурная схема терминов
- •Работа с записями
- •Методика изменения данных при помощи компонент
- •Использование хранимых процедур
- •Понятие и назначение хранимых процедур
- •Язык хранимых процедур
- •Использование триггеров и генераторов
- •Понятие триггера
- •Команды создания, изменения и удаления триггера
- •Генераторы - назначение, создание, установка начального значения
- •Функции, определяемые пользователем – назначение, создание, применение, порядок работы с ними
- •Сортировка, поиск и фильтрация в бд и выборках
- •Сортировка
- •Фильтрация записей
- •Организация данных в бд InterBase
- •Поиск в наборах данных
- •Манипулирование данными в выборках
- •Управление транзакциями и кэширование памяти
- •Механизм транзакций
- •Механизм кэшированных изменений
- •Перехват исключительных ситуаций и обработка ошибок
- •Понятие исключительных ситуаций
- •Обработка исключений
- •Формирование и вывод отчетов
- •Назначение и виды отчетов
- •Компоненты для формирования отчетов
- •Особенности проектирования клиентской части приложения в различных технологиях доступа
- •Особенности проектирования клиентской части приложения в различных технологиях доступа
- •Установка привилегий доступа к данным
- •Понятие привилегии, привилегии по умолчанию
- •Состав параметров при установлении привилегий
- •Назначение привилегий пользователю и группам пользователей
- •Отмена привилегий
- •Копирование, перенос и восстановление данных Создание резервной копии и восстановление бд
- •Восстановление транзакций
- •Регистрация новых пользователей
- •Копирование клиентской части приложения бд Структурная схема терминов
- •Утилита Install Shield
- •Определение файлов, объектов и элементов среды
- •Задание диалога при разархивировании
- •Создание прообраза копии диска
- •Создание копии на дискетах
Введение в работу с удаленными бд
Физическая организация базы данных формата InterBase
БД состоит из последовательности страниц, нумеруемых с нуля.
Нулевая страница является служебной и содержит информацию, необходимую для соединения с БД.
Размер страницы – 1 Кб (по умолчанию), а также 2, 4, 8 Кб – установлен при создании и может быть изменен при сохранении и восстановлении БД, поэтому размер страницы рекомендуется задавать равным размеру кластера диска. При этом учитывается длина записи и наличие BLOB-полей. Объем буфера ввода-вывода для операции чтения и записи определяется количеством страниц (75 по умолчанию). Если БД будет читаться чаще, объем следует увеличить.
В InterBase поддерживается многоверсионная структура записей. При изменении записи создается новая версия, куда записывается, помимо данных, номер транзакции и указатель на предыдущую версию. Старая версия помечена как измененная, а её указатель на следующую версию содержит адрес вновь созданной версии. Каждая стартующая транзакция работает с измененной версией записи. При удалении записи она помечается как удаленная, а удаляется, когда с ней завершены все активные транзакции.
При добавлении новой записи происходит компресация страницы за счет использования "дырок". Если суммарной "дырки" не хватает, то запись помещается на новую страницу. Выделение страниц не оптимизировано. На служебной странице хранятся номера всех свободных страниц.
Многоверсионная структура записи и неоптимальное выделение страниц ведут к высокой фрагментации и замедлению работы с БД, поэтому периодически приходится выполнять дефрагментацию либо путем сохранения БД на диске с последующим восстановлением из резерва копий, либо путем автосборки "мусора".
Организация сеанса связи с удаленной бд
Для организации сеанса связи с удаленной БД, а также ведения и корректировки данных используются специальные утилиты, поставляемые с Delphi и InterBase.
Утилиты для работы с удаленными БД в Delphi
WISQL – это утилита для доступа к БД, здесь создается БД и таблицы, изменяется структура, вносятся и изменяются данные. Она работает с БД в интерактивном режиме с помощью команд языка SQL, минуя BDE.
InterBase Server Manager – используется для управления SQL-сервером в целом, и отдельными БД.
DatabaseDesktop – может ограничено использоваться для просмотра БД Interbase и работы с индексами.
SQL Explorer – используется для просмотра БД и ввода данных.
SQL Monitor – используется для просмотра и анализа реальных процессов на сервере при реализации пользовательского запроса.
IB Console – утилита, используемая для визуального создания и ведения БД в шестой версии Delphi.
В начале работы с любой из этих утилит нужно установить соединение с БД и лишь затем можно выполнять необходимые действия. Соединение выполняется с указанием пользователя. Все пользователи БД обладают разными правами для дополнительной защиты информации. Максимальными правами обладает администратор БД, в СУБД InterBase администратор имеет:
Login = SYSDBA (обязательно большие буквы)
Password = masterkey