Реляционный подход к построению БД
Требования к БД 1. Хранение и модификация информации больших объемов 2. Необходимо обеспечить достоверность информации 3. Восстановление данных после сбоя 4. Поиск данных по совокупности различных признаков 5. Обслуживание большого количества пользователей 6. Обеспечить оперативность обработки запросов 7. Обеспечение удобного интерфейса 8. Обеспечение доступа к данным СУБД – набор программных модулей Требования к современным СУБД 1. Масштабируемость – система должна обеспечить скорость обработки запросов 2. Доступность – возможность всегда выполнить запрос 3. Надежность – обеспечения миним. количества сбоев 4. Управляемость 5. Наличие средств автоматизации 6. Наличие средств защиты Иерархическая модель – состоит из элементов называемых узлами Корневой узел Исходный и порожденный Связи между узлами Папки в проводнике, генелогич. Дерево Последоват. перебор узлов Модель явл. несбалансированной Сбалансированые модели – из каждого исходного узла пораждаются равное кол-во узлов Недостатки: Разрыв связи приводит к потери информации,не допускают к хранению двух корневых узлов Сетевая модель характерна неупорядоченность Табличная (реляционная)- набор двумерных таблиц,связанных между собой отношениями Достоинства реляц. БД 1. Унифицированная работа с БД 2. Простота расширения лог. Записи в БД 3. Легко можно устранить избыточность данных Предметная область – это часть реального мира представляющая интерес для исследования. Объект – элемент информационной системы, данные которого мы сохраняем Запросы предназначены для поиска в базе данных информации, отвечающей определенным критериям. Найденные записи, называемые результатами запроса, можно просматривать, редактировать и анализировать различными способами.
Типы запросов 1. Запрос на выборку - Отбирает данные из одной или нескольких таблиц базы данных и отображает набор записей в таблице данных. Это самый распространенный тип запроса. 2. Запрос с параметрами - Предлагает пользователю ввести значения, которые определяют запрос, например, результатов задать регион для получения по продажам или ценовой диапазон на недвижимость. 3. Перекрестный запрос - Упорядочивает набор записей для облегчения их просмотра с использованием заголовков строк и столбцов. 4. Запрос на изменение - Создает новую таблицу или изменяет существующую. 5. Запрос SQL - Расширенный запрос, создаваемый с помощью инструкций SQL. Реляционный подход к построению БД Таблица базы данных — двумерный массив, содержащий информацию об одном классе объектов. В теории реляционной алгебры двумерный массив (таблицу) называют отношением. Таблица состоит из следующих элементов: поле, ячейка, запись. Поле содержит значения одного из признаков, характеризующих объекты БД. Число полей в таблице соответствует числу признаков, характеризующих объекты БД. Поля (столбцы) Ячейка содержит конкретное значение соответствующего поля (признака одного объекта). Запись — строка таблицы. Она содержит значения всех признаков, характеризующих один объект. Число записей (строк) соответствует числу объектов, данные о которых содержатся в таблице. В теории баз данных термину запись соответствует понятие кортеж — последовательность атрибутов, связанных между собой отношением AND (И). В теории графов кортеж означает простую ветвь ориентированного графа — дерева. Одним из важных понятий, необходимых для построения оптимальной структуры реляционных баз данных, является понятие ключа, или ключевого поля.
Ключом считается поле, значения которого однозначно определяют значения всех остальных полей в таблице. Например, поле «Номер паспорта», или «Идентификационный номер налогоплательщика (ИНН)», однозначно определяет характеристики любого физического лица (при составлении соответствующих таблиц баз данных для отделов кадров или бухгалтерии предприятия). Термины реляционных баз данных Теория БД Реляционные СУБД(FoxPro, Microsoft Access) SQL Server 7.0 Отношение (Relation) Таблица (Table) Таблица (Table) Атрибут (Attribute) Поле (Field) Колонка (Column) Кортеж (Tuple) Запись (Record) Строка (Row) Ключом таблицы может быть не одно, а несколько полей. В этом случае множество полей может быть возможным ключом таблицы только тогда, когда удовлетворяются два независимых от времени условия: уникальность и минимальность. Каждое поле, не входящее в состав первичного ключа, называется не ключевым полем таблицы. Уникальность ключа означает, что в любой момент времени; таблица базы данных не может содержать никакие две различные записи, имеющие одинаковые значения ключевых полей. Выполнение условия уникальности является обязательным. 3. Типы взаимосвязей в модели: «один-к-одному», «один-ко-многим» и «многие-ко-многим». Между таблицами устанавливаются следующие типы связей: «один к одному»; «один ко многим»; «многие ко многим»: • связь «один к одному» устанавливается в случаях, когда конкретная строка главной таблицы в любой момент времени связана только с одной строкой подчиненной таблицы; • связь «один ко многим» устанавливается в случаях, когда конкретная строка главной таблицы в любой момент времени связана с несколькими строками подчиненной таблицы; при этом любая строка подчиненной таблицы связана только с одной строкой главной таблицы; • связь «многие ко многим» устанавливается в случаях, когда конкретная строка главной таблицы в любой момент времени связана с несколькими строками подчиненной таблицы и в то же время одна строка подчиненной таблицы связана с несколькими строками Целостность данных - это механизм поддержания соответствия базы данных предметной области. Транзакция — группа последовательных операций с базой данных, которая представляет собой логическую единицу работы с данными. Транзакция может быть выполнена либо целиком и успешно, соблюдая целостность данных и независимо от параллельно идущих других транзакций, либо не выполнена вообще и тогда она не должна произвести никакого эффекта. Транзакции обрабатываются транзакционными системами, в процессе работы которых создаётся история транзакций.
Журнал транзакций является критическим компонентом базы данных и в случае системного сбоя может потребоваться для приведения базы данных в согласованное состояние. Журнал транзакций нельзя ни удалять, ни изменять, если только не известны возможные последствия. Журнализация изменений — функция СУБД, которая сохраняет информацию, необходимую для восстановления базы данных в предыдущее согласованное состояние в случае логических или физических отказов. В простейшем случае журнализация изменений заключается в последовательной записи во внешнюю память всех изменений, выполняемых в базе данных. Записывается следующая информация: 1. порядковый номер, тип и время изменения; 2. идентификатор транзакции; 3. объект, подвергшийся изменению (номер хранимого файла и номер блока данных в нём, номер строки внутри блока); 4. предыдущее состояние объекта и новое состояние объекта. Хранимая процедура — объект базы данных, представляющий собой набор SQL-инструкций, который компилируется один раз и хранится на сервере. Хранимые процедуры очень похожи на обыкновенные процедуры языков высокого уровня, у них могут быть входные и выходные параметры и локальные переменные, в них могут производиться числовые вычисления и операции над символьными данными, результаты которых могут присваиваться переменным и параметрам. Триггеры являются одной из разновидностей хранимых процедур. Их исполнение происходит при выполнении для таблицы какого-либо оператора языка манипулирования данными.Триггеры используются для проверки целостности данных, а также для отката транзакций. Типы триггеров Категории Значение Комментарии Оператор INSERT, UPDATE, DELETE Определяет какой оператор DML вызывает активацию (firing) триггера. Момент времени BEFORE, AFTER Определяет момент активации триггера: до или после выполнения оператора.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|