- •Министерство образования и науки рф Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
- •Введение в базы данных
- •Учебное пособие
- •Воронеж 2012
- •Понятие информационной системы
- •Процессы в информационной системе
- •Этапы развития информационных систем
- •Структура информационной системы. Типы обеспечивающих подсистем
- •Математическое и программное обеспечение
- •Правовое обеспечение
- •Классификация информационных систем по признаку структурированности задач
- •Понятие структурированности задач
- •Типы информационных систем, используемые
- •Классификация ис по характеру использования информации
- •Классификация ис по сфере применения
- •Классификация ис по степени автоматизации
- •Контрольные вопросы
- •2. Введение в субд
- •2.1. Понятие базы и банка данных
- •2.2. Средства реализации баз данных
- •2.2.1. Программные средства банка данных
- •2.2.2. Языковые средства
- •2.2.3. Технические и организационно-методические средства
- •2.2.4. Требования к банкам данных
- •2.3. Функции субд
- •2.4. Классификация банков данных
- •2.4.1. Классификация баз данных
- •2.4.2. Классификация субд
- •2.4.3. Классификация БнД по экономико-организационным признакам
- •2.5. Концепция централизованного управления
- •Преимущества централизованного управления данными
- •2.6. Трехуровневая архитектура системы баз данных
- •2.7. Пользователи банков данных
- •2.8. Архитектура клиент/сервер
- •Контрольные вопросы
- •3. Модели и типы данных
- •3.1. Иерархическая модель
- •3.2. Сетевая модель
- •3.3. Реляционная модель
- •3.4. Постреляционная модель
- •3.5. Многомерная модель
- •3.6. Типы данных
- •Контрольные вопросы
- •4. Применение Баз данных в корпоративных информационных системах
- •4.1. Корпоративная информационная система
- •Контуром оперативного управления
- •4.2. Контур административного управления
- •4.2.1. Наполнение баз данных на примере модуля «Управление персоналом»
- •4.3. Контур оперативного управления
- •4.3.1. Пример организации модуля «Управление продажами (сбыт)»
- •Базы данных модуля «Автотранспорт»
- •4.4. Контур бухгалтерского учета
- •Контрольные вопросы
- •5. Справочно-правовые базы данных
- •5.1. Общая характеристика справочно-правовых баз
- •5.2. Наиболее популярные юридические базы данных
- •5.2.1. База юсис
- •5.2.2. Информационно-поисковая система "Кодекс"
- •5.2.3. Справочно-правовая система "Гарант"
- •5.2.4. Справочно-правовая система «Консультант Плюс»
- •5.2.5. Программный комплекс "Эталон"
- •Контрольные вопросы
- •6. Проектирование баз данных
- •6.1. Этапы проектирования
- •6.2. Инфологическое моделирование
- •6.2.1. Компоненты инфологической модели Модель «сущность — связь»
- •6.2.2. Классификация бинарных связей
- •6.2.3. Моделирование локальных представлений
- •6.2.4. Объединение моделей локальных представлений
- •6.3. Даталогическое проектирование
- •6.4. Проектирование реляционных баз данных
- •6.5. Нормализация отношений
- •Контрольные вопросы
- •7. Реляционная модель данных
- •Общие понятия
- •7.2. Реляционные объекты данных
- •7.2.1. Основные понятия
- •7.2.2. Фундаментальные свойства отношений
- •7.2.3. Виды отношений
- •Целостность реляционных данных
- •Реляционные операторы
- •7.4.1. Реляционная алгебра
- •Примеры использования реляционной алгебры для выражения словесных запросов в виде формулы
- •Назначение реляционной алгебры
- •Операции расширения и подведения итогов
- •Операторы обновления
- •7.4.2. Реляционное исчисление
- •Контрольные вопросы
- •8. Язык реляционных баз данных sql
- •8.1. Функции и основные возможности
- •8.2. Средства определения схемы
- •8.2.1. Определение таблицы
- •8.2.2. Определение ограничений целостности таблицы
- •8.2.3. Определение представлений
- •8.3. Структура запросов
- •8.3.1. Спецификация курсора
- •8.3.2. Оператор выборки
- •8.3.3. Подзапрос
- •8.3.4 Табличное выражение
- •Раздел where
- •Предикат сравнения
- •Предикат between
- •Предикат in
- •Предикат null
- •Предикат с квантором
- •Предикат exists
- •Раздел group by
- •Раздел having
- •8.4. Агрегатные функции и результаты запросов
- •8.5. Операторы обновления
- •Оператор изменения записей
- •Контрольные вопросы
- •9. Внутренняя организация реляционных субд
- •9.1. Хранение отношений
- •9.2. Индексы
- •9.3. Журнальная информация
- •9.4. Служебная информация
- •Контрольные вопросы
- •10. Настольные субд
- •10.1. Общие сведения о настольных субд
- •10.2. Наиболее популярные настольные субд
- •Контрольные вопросы
- •11. Серверные субд
- •11.1. Характерные черты современных серверных субд
- •Наиболее популярные серверные субд
- •Контрольные вопросы
- •Заключение
- •Корелина Татьяна Валерьевна введение в базы данных
- •394006 Воронеж, ул. 20-летия Октября, 84
7.2. Реляционные объекты данных
7.2.1. Основные понятия
Основными понятиями объектов реляционных баз данных являются отношение, кортеж, кардинальное число, атрибут, степень, домен и первичный ключ.
Пример отношения СОТРУДНИКИ, содержащего информацию о сотрудниках некоторой организации, приведен на рис. 3.1.
Домен - допустимое потенциальное множество значений данного типа, которые может принимать объект.
Домен представляет набор скалярных значений, из которых разные атрибуты различных отношений берут свои реальные значения. Домены ограничивают сравнения, т.е. в общем случае требуется, чтобы сравниваемые значения принадлежали одному домену. Как следствие, домены ограничивают различные реляционные операции.
Отношение делится на две части: заголовок и тело. Заголовок – это набор атрибутов (точнее, пар «имя атрибута: имя домена»), а тело – это набор кортежей. Количество атрибутов называется степенью (или арностью), а количество кортежей – кардинальным числом.
Первичный ключ – это уникальный идентификатор для таблицы, т.е. столбец или такая комбинация столбцов, что в любой момент времени не существует двух строк, содержащих одинаковое значение в этом столбце или комбинации столбцов.
Рис. 7.1. Пример отношения СОТРУДНИКИ
Для реляционных баз данных следующие термины являются эквивалентными:
Формальный реляционный термин |
Неформальный эквивалент |
Отношение |
Таблица |
Кортеж |
Строка или запись |
Кардинальное число |
Количество строк |
Атрибут |
Столбец или поле |
Степень |
Количество столбцов |
Первичный ключ |
Уникальный идентификатор |
Домен |
Общая совокупность допустимых значений |
В дальнейшем в качестве примера будет использоваться база данных поставщиков и деталей (рис. 7.2).
|
|
|
|
|
|
|
|
|
|
|
S |
S# |
SNAME |
STATUS |
CITY |
|
SP |
S# |
P# |
QTY |
|
|
S1 |
Smith |
20 |
London |
|
|
S1 |
P1 |
300 |
|
|
S2 |
Jones |
10 |
Paris |
|
|
S1 |
P2 |
200 |
|
|
S3 |
Black |
30 |
Paris |
|
|
S1 |
P3 |
400 |
|
|
S4 |
Clark |
20 |
London |
|
|
S1 |
P4 |
200 |
|
|
S5 |
Adams |
30 |
Athens |
|
|
S1 |
P5 |
100 |
|
|
|
|
|
|
|
|
S1 |
P6 |
100 |
|
P |
P# |
PNAME |
COLOR |
WEIGHT |
CITY |
|
S2 |
P1 |
300 |
|
|
P1 |
Nut |
Red |
12 |
London |
|
S2 |
P2 |
400 |
|
|
P2 |
Bolt |
Green |
17 |
Paris |
|
S3 |
P2 |
200 |
|
|
P3 |
Screw |
Blue |
17 |
Rome |
|
S4 |
P2 |
200 |
|
|
P4 |
Screw |
Red |
14 |
London |
|
S4 |
P4 |
300 |
|
|
P5 |
Cam |
Blue |
12 |
Paris |
|
S4 |
P5 |
400 |
|
|
P6 |
Cog |
Red |
19 |
London |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рис. 7.2. База данных поставщиков и деталей
В базе данных предполагается следующая семантика:
• Таблица S представляет поставщиков. Каждый поставщик имеет уникальный номер (S#); имя (SNАМЕ); значение рейтинга или статуса (SТАТUS); место расположения (СIТY). Предполагается, что каждый поставщик расположен точно в одном городе.
• Таблица Р представляет детали (точнее, виды деталей). У каждого вида детали есть номер детали (Р#), который является уникальным; название детали (РNАМЕ); цвет (СОLOR); вес (WEIGHT); место расположения, где хранится этот вид деталей (CITY). Предполагается, что вес детали приведен в фунтах. Также предполагается, что каждый отдельный вид детали только одного цвета и хранится на складе точно в одном городе.
• Таблица SР представляет поставки. Каждая поставка характеризуется номером поставщика (S#), номером детали (Р#) и количеством (QTY). Предполагается, что в одно и то же время может быть не более одной поставки для одного поставщика и одной детали, поэтому для данной поставки комбинация значений S# и Р# уникальна с точки зрения набора текущих поставок, находящихся в таблице SР.
Поставщиков и детали можно рассматривать как объекты, а поставку – как отношение между определенным поставщиком и определенной деталью.