- •Иерархическая модель данных.
- •Постреляционные модели данных. Описание моделей данных
- •Системы управления базами данных (субд). Функции субд.
- •Логическая и физическая структура базы данных.
- •Трехуровневая архитектура системы управления базами данных.
- •Современные инструментальные средства разработки схемы бд.
- •Понятия и определения архитектуры удаленных бд.
- •Отличия и преимущества удаленных бд от локальных бд.
- •Технологии доступа к удаленным бд. Объектные модели доступа к удаленным бд.
- •Универсальная стратегия доступа к данным odbc. Технологии ado, bde, com, corba.
- •Разработка и управление бд средствами языка sql.
- •Элементы и конструкции языка sql. Управление данными с помощью языка sql.
- •Создание хранимых процедур
- •Для разработки схем триггеров используется следующий алгоритм:
- •Основные элементы клиентских программ
- •Методы сортировки, поиска и фильтрации данных.
- •Управление транзакциями, кеширование памяти, перехват исключительных ситуаций и обработка ошибок.
- •Формирование и вывод отчетов. Назначение и виды отчетов.
- •Идентификация и аутентификация пользователей.
- •Антивирусная защита данных. Технические методы и средства защиты бд.
- •Создание хранимых процедур
Управление транзакциями, кеширование памяти, перехват исключительных ситуаций и обработка ошибок.
При работе с несколькими таблицами БД взаимосвязанные изменения периодически вносятся в разные таблицы. При возникновении какой-либо ошибки, связанной с записью нового количества товара, новое значение может быть не занесено в соответствующую запись, в результате чего целостность БД нарушится, и она будет содержать некорректные значения.
Для поддержания целостности БД используется так называемый механизм транзакций. Транзакция представляет собой последовательность операций, обычно выполняемую для нескольких наборов данных. Транзакция переводит БД из одного целостного состояния в другое.
Транзакция может быть явной или неявной. Неявная транзакция запускается автоматически при модификации набора данных, например, при выполнении методов Edit, Insert, Delete. Неявная транзакция утверждается методом Post закрепления изменений в наборе данных, а отменяется методом Cancel.
Явная транзакция означает, что программист должен самостоятельно организовывать операции изменения наборов данных. Для реализации механизма явных транзакций предоставляются специальные методы компонента Database:
- StartTransaction – начинает транзакцию, после него должны располагаться инструкции, составляющие транзакцию,
- Commit – подтверждает транзакцию и все изменения вступают в силу,
- Rollback – отменяет транзакцию и действие всех операций в рамках этой транзакции при возникновении исключений.
При модификации удаленной БД также осуществляются явные и неявные транзакции.
Возможность явного управления транзакциями представляет язык SQL сервера, в составе которого есть следующие инструкции:
SET TRANSACTION – начать транзакцию,
COMMIT – подтвердить транзакцию,
ROLLBACK – откатить транзакцию.
Механизм кэшированных изменений заключается в том, что на компьютере клиента в КЭШе (буфере) создается локальная копия данных, и все изменения в данных выполняются в этой копии. Сделанные изменения можно подтвердить, перенеся их в основную БД, хранящуюся на сервере, или отказаться от них. Этот механизм напоминает механизм транзакций, но, в отличие от него, снижает нагрузку на сеть, т.к. все изменения передаются в основную БД одним пакетом.
Формирование и вывод отчетов. Назначение и виды отчетов.
Формирование и вывод отчетов. Назначение и виды отчетов.
В Delphi 7 для создания отчетов предназначен генератор отчетов Rave Reports, компоненты которого, предназначенные для управления отчетами, размещены на странице Rave палитры компонентов.
Отчет размещается в файле с расширением rav, который представляет проект создаваемого отчета и содержит информацию об отчете, параметры оформления страниц отчета и др.
Визуальный конструктор Rave Reports повышает удобство и упрощает непосредственную разработку отчетов. Вызвать визуальный конструктор можно:
- с помощью команды Tools\ Rave Designer меню Delphi,
- двойным щелчком мыши на компоненте RvProject,
- с помощью команды Rave Visual Designer контекстного меню компонента RvProject.
Инспектор компонентов отчета, расположенный в левой части окна визуального конструктора, позволяет выполнить настройку свойств компонентов отчета, которые выбираются в дереве проекта отчета. В нижней части Инспектора компонентов отчета может отображаться подсказка для выбранного свойства.
В центральной части окна визуального конструктора расположен блокнот с двумя вкладками: Page Designer (Конструктор страниц) и Event Editor (Редактор событий). С помощью вкладки Конструктор страниц можно добавлять, удалять и настраивать компоненты на отдельных страницах отчета. С помощью вкладки Редактор событий создаются обработчики событий для отчетов, страниц, элементов оформления и компонентов отчета.
В правой части окна визуального конструктора расположено дерево проекта отчета, в котором имеются следующие составляющие:
- Report Library (Библиотека отчетов проекта) – содержит все отчеты проекта;
- Global Page Catalog (Каталог глобальных страниц) – содержит перечень страниц, являющихся общими для всего проекта;
- Data View Dictionary (Словарь просмотров данных) – содержит объекты соединения с данными из внешних источников.
Добавить к проекту новый отчет можно командой File\New Report визуального конструктора. Добавить к текущему отчету страницы можно командой File\New Report Page.
Для управления составом и очередностью печати страниц предназначено свойство PageList. Если значение свойства не определено, то печатаются все страницы отчета в порядке их следования в дереве проектов отчета.
Добавить в состав каталога пустую глобальную страницу можно выполнить командой File\New Global Page.
Создание новых объектов доступа к данным выполняется командой File\New Data Object. При этом открывается диалоговое окно Data Connections, в котором для выбора предлагаются следующие типы объектов:
- Data Lookup Security Controller (Контроллер безопасности поиска данных) – обеспечивает аутентификацию пользователей по имени и паролю;
- Database Connection (Соединение с базой данных) – устанавливает соединение с внешним источником данных для требуемой технологии доступа (ADO, BDE, dbExpress),
- Direct Data View (Прямой просмотр данных) – создает просмотр данных для активного соединения с источником данных,
- Driver Data View (Просмотр данных с помощью драйвера) – создает просмотр данных на основе уже имеющегося в словаре соединения,
- Simple Security Controller (Простой контроллер безопасности) – задает список пользователей для возможной организации доступа в отчетах.
В проекте любому отчету, странице, элементу оформления или компоненту отчета можно назначить один или несколько обработчиков событий. Это можно сделать на вкладке Event Editor блокнота в центральной части окна визуального конструктора.
Создание и использование составляющих отчета.
Использование возможностей импорта данных в отчет.
Основные определения и понятия администрирования.
Администраторы базы данных выполняют большой круг разнообразных функций:
1. Анализ предметной области: описание предметной области, выявление ограниче-ний целостности, определение статуса информации, определение потребностей поль-зователей, определение статуса пользователей, определение соответствия «данные – пользователь», определение объемно-временных характеристик обработки данных.
2. Проектирование структуры базы данных: определение состава и структуры инфор-мационных единиц, составляющих базу данных, задание связей между ними, выбор методов упорядочения данных и методов доступа к информации, описание структуры БД на языке обработки данных (ЯОД).
3. Задание ограничений целостности при описании структуры базы данных и проце-дур обработки БД: задание ограничений целостности, присущих предметной области, определение ограничений целостности, вызванных структурой базы данных, разра-ботка процедур обеспечения целостности БД при вводе и корректировке данных, обеспечение ограничений целостности при параллельной работе пользователей в многопользовательском режиме.
4. Первоначальная загрузка и ведение базы данных: разработка технологии первона-чальной загрузки и ведения (изменения, добавления, удаления записей) БД, проекти-рование форм ввода, создание программных модулей, подготовка исходных данных, ввод и контроль ввода.
5. Защита данных от несанкционированного доступа:
Виды пользователей и группы привилегий, соответствующие виду пользователей.
Привилегии в СУБД можно подразделить на две категории:привилегии безопасности ипривилегии доступа. Привилегии безопасности позволяют выполнять административные действия.Привилегии доступа, в соответствии с названием, определяют правадоступа субъектов к определенным объектам.
Привелегии безопасности всегда выделяются конкретному пользователю во время его создания или изменения характеристик. Таких привилегий пять: security - право управлять безопасностью СУБД и отслеживать действия пользователей. Пользователь с этойпривилегией может подключаться к любой базе данных, создавать, удалять и изменять характеристики пользователей, групп и ролей, передавать права надоступ к базам данным другим пользователям. Привилегия security необходима администратору сервера баз данных, а также лицу, персонально отвечающему за информационную безопасность. createdb - право на создание и удаление баз данных. Этой привилегией, помимо администратора сервера, должны обладать пользователи, которым отводится роль администраторов отдельных баз данных. operator - право на выполнение действий, которые традиционно относят к компетенции оператора. Имеются в виду запуск и остановка сервера, сохранение и восстановление информации. Помимо администраторов сервера и баз данных этой привилегией целесообразно наделить также администратора операционной системы. maintain_locations - право на управление расположением баз администраторы сервера баз данных и операционной системы. trace - право на изменение состояния флагов отладочной трассировки. Данная привилегия полезна администратору сервера баз данных и другим знающим пользователям при анализе сложных, непонятных ситуаций.
Привилегии доступа выделяются пользователям, группам, ролям или всем посредством оператора GRANT и изымаются с помощью оператора REVOKE. Эти привилегии, как правило, присваивает владелец соответствующих объектов (он же - администратор базы данных) или обладатель привилегии security (обычно администратор сервера баз данных). Прежде чем присваивать привилегии группам и ролям, их (группы и роли) необходимо создать с помощью операторов CREATE GROUP и CREATE ROLE. Для изменения состава группы служит оператор ALTER GROUP. Оператор DROP GROUP позволяет удалять группы, правда, только после того, как опустошен список членов группы. Оператор ALTER ROLE служит для изменения паролей ролей, а DROP ROLE - для удаления ролей.
Ресурсы администрирования. Возможности операционной системы для администрирования.
Методы и средства защиты данных в базах данных.
Средства защиты БД в различных СУБД несколько отличаются друг от друга. На основе анализа современных СУБД Borland и Microsoft можно утверждать, что средства защиты БД условно делятся на две группы, основные и дополнительные.
К основным средствам защиты информации можно отнести следующие средства:
- парольная защита;
- шифрование данных и программ;
- установление прав доступа к объектам БД;
- защита полей и записей таблиц БД.
Парольная защита представляет простой и эффективный способ защиты БД от несанкционированного доступа. Пароли устанавливаются конечными пользователями или администраторами БД. Учет и хранение паролей производится самой СУБД. Обычно пароли хранятся в определенных системных файлах СУБД в зашифрованном виде. Поэтому просто найти и определить пароль невозможно. После ввода пароля пользователю СУБД предоставляются все возможности по работе с защищенной БД.
Шифрование данных (всей базы или отдельных таблиц) применяется для того, чтобы другие программы не могли прочитать данные. Шифрование исходных текстов программ позволяет скрыть от несанкционированного пользователя описание соответствующих алгоритмов.
В целях контроля использования основных ресурсов СУБД во многих системах имеются средства установления прав доступа к объектам БД. Права доступа определяют возможные действия над объектами. Владелец объекта (пользователь, создавший объект), а также администратор БД имеют все права. Остальные пользователи к разным объектам могут иметь различные уровни доступа.
По отношению к таблицам в общем случае могут предусматриваться следующие права доступа.
- просмотр (чтение) данных;
- изменение (редактирование) данных;
- добавление новых записей;
- добавление и удаление данных;
- все операции, в том числе изменение структуры таблицы.
Контроль доступа к данным. Управление привилегиями пользователей БД.
СУБД не должна разрешать пользователю выполнение какой-либо операции над данными, если он не получил на это права. Санкционирование доступа к данным осуществляется администратором БД. В обязанности администратора БД входит:
назначение отдельным группам пользователей прав доступа (привилегий) к отдельным группам данных в соответствии с правилами ПО;
организация системы контроля доступа к данным;
тестирование вновь создаваемых средств защиты данных;
периодическое проведение проверок правильности работы системы за-щиты, исследование и предотвращение сбоев в её работе.
Примечание: администратор БД обычно назначает права доступа в соответствии с проектом БД, который должен включать перечень групп пользователей и их привилегии.
Для каждого пользователя система поддерживает паспорт пользователя, содержащий его идентификатор, имя процедуры подтверждения подлинности и перечень разрешённых операций. Подтверждение подлинности заключается в доказательстве того, что пользователь является именно тем человеком, за которого себя выдаёт. Чаще всего подтверждение подлинности выполняется путём парольной идентификации. Перечень операций обычно определяется той группой, к которой принадлежит пользователь. В реальных системах иногда преду-сматривается возможность очень ограниченного доступа к данным постороннего человека, не требующая идентификации (доступ типа "гость").
Парольная идентификация заключается в присвоении каждому пользователю двух параметров: имени (login) и пароля (password). При входе в систему она запрашивает у пользователя его имя, а для подтвер-ждения того, что это имя ввёл его владелец, система запрашивает пароль. Имя выдаётся пользователю при регистрации администратором, пароль пользователь устанавливает сам.
