Файл: Базы данных - уч. пособие.pdf

Добавлен: 28.11.2018

Просмотров: 9831

Скачиваний: 41

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

Министерство образования и науки Российской Федерации

ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)

ФАКУЛЬТЕТ ДИСТАНЦИОННОГО ОБУЧЕНИЯ (ФДО)

П. В. Сенченко

ОРГАНИЗАЦИЯ БАЗ ДАННЫХ

Учебное пособие

Томск

2015


background image

УДК

004.65(075.8)

ББК

32.973.233-018.2я73
С 316

Рецензенты:

Тарасенко В. Ф., докт. техн. наук, профессор кафедры теоретической кибернетики

Национального исследовательского Томского государственного университета;

Перемитина Т. О. канд. техн. наук, доцент кафедры автоматизации обработки

информации ТУСУР.

Сенченко П. В.

С 316

Организация баз данных : учебное пособие / П. В. Сенченко. — Томск :

ФДО, ТУСУР, 2015. — 170 с.

Рассматриваются вопросы организации баз данных. Изложены прин-

ципы проектирования реляционных баз данных, нормализации отноше-
ний. Подробно рассматриваются операции реляционной алгебры, синтак-
сис и применение языка SQL. Даются характеристики баз данных различ-
ных поколений. Материал подготовлен на основе учебного курса, который
читается автором в Томском государственном университете систем управ-
ления и радиоэлектроники.

Ориентировано на студентов направлений подготовки бакалавров

«Государственное и муниципальное управление», «Бизнес-информатика»,
«Программная инженерия», а также студентов родственных специально-
стей и разработчиков баз данных.

УДК

004.65(075.8)

ББК

32.973.233-018.2я73

©

Сенченко П. В., 2015

©

Оформление.
ФДО, ТУСУР, 2015


background image

ОГЛАВЛЕНИЕ

Введение

6

1

Обоснование концепции баз данных

8

1.1

История и направления развития вычислительной техники . . . . . .

8

1.2

Файл и области применения файлов . . . . . . . . . . . . . . . . . . . .

11

1.3

Основные понятия СУБД . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

1.4

Функции СУБД . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

17

2

Модели данных

24

2.1

Архитектура представления информации в концепции баз данных .

24

2.2

Развитие моделей данных . . . . . . . . . . . . . . . . . . . . . . . . . . .

27

2.3

Иерархическая модель данных . . . . . . . . . . . . . . . . . . . . . . . .

30

2.4

Сетевая модель данных . . . . . . . . . . . . . . . . . . . . . . . . . . . .

32

3

Реляционная модель

35

3.1

Основные понятия реляционной модели . . . . . . . . . . . . . . . . . .

35

3.1.1

Общие сведения . . . . . . . . . . . . . . . . . . . . . . . . . . . .

35

3.1.2

Смысл понятий реляционной модели . . . . . . . . . . . . . . .

36

3.2

Свойства отношений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

39

3.2.1

Уникальность кортежей отношения . . . . . . . . . . . . . . . .

39

3.2.2

Отсутствие упорядоченности кортежей и атрибутов . . . . . .

40

3.2.3

Атомарность значений атрибутов, первая нормальная форма .

40

3.2.4

Состав реляционной модели данных . . . . . . . . . . . . . . .

42

3.3

Целостная часть реляционной модели данных . . . . . . . . . . . . . .

44

3.3.1

Целостность сущности . . . . . . . . . . . . . . . . . . . . . . . .

44

3.3.2

Ссылочная целостность . . . . . . . . . . . . . . . . . . . . . . .

44

3.3.3

Целостность доменов . . . . . . . . . . . . . . . . . . . . . . . . .

46

3.3.4

Целостность, определяемая пользователем . . . . . . . . . . . .

47

3.4

Технология манипулирования данными в реляционной модели . . . .

48

3.4.1

Основные принципы технологии манипулирования
реляционными данными . . . . . . . . . . . . . . . . . . . . . . .

48

3.4.2

Операции реляционной алгебры . . . . . . . . . . . . . . . . . .

49

3.4.3

Реляционное исчисление . . . . . . . . . . . . . . . . . . . . . . .

56

4

Технология проектирования реляционных баз данных

60

4.1

Нормализация отношений . . . . . . . . . . . . . . . . . . . . . . . . . . .

60

4.1.1

Термины и определения . . . . . . . . . . . . . . . . . . . . . . .

60

4.1.2

Вторая нормальная форма . . . . . . . . . . . . . . . . . . . . . .

62

4.1.3

Третья нормальная форма . . . . . . . . . . . . . . . . . . . . . .

64

4.1.4

Нормальная форма Бойса—Кодда . . . . . . . . . . . . . . . . . .

66


background image

4

Оглавление

4.1.5

Четвертая нормальная форма . . . . . . . . . . . . . . . . . . . .

68

4.1.6

Пятая нормальная форма . . . . . . . . . . . . . . . . . . . . . . .

70

4.1.7

Денормалилизация отношений . . . . . . . . . . . . . . . . . . .

72

4.2

Моделирование данных с помощью диаграмм «сущность-связь» . . .

74

4.2.1

Основные понятия модели «сущность-связь» . . . . . . . . . .

74

4.2.2

Принцип нормализации ER-диаграмм . . . . . . . . . . . . . . .

77

4.2.3

Дополнительные элементы ER-модели . . . . . . . . . . . . . .

78

4.2.4

Получение схемы реляционной базы данных из
ER-диаграммы . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

78

4.3

CASE-средства . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

80

4.3.1

Назначение и классификация CASE-средств . . . . . . . . . . .

80

4.3.2

Обзор CASE-средств . . . . . . . . . . . . . . . . . . . . . . . . .

80

5

Языки управления и манипулирования данными

86

5.1

Язык SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

86

5.1.1

История развития языка . . . . . . . . . . . . . . . . . . . . . . .

86

5.1.2

Стандарты языка SQL . . . . . . . . . . . . . . . . . . . . . . . . .

87

5.1.3

Описание основных команд SQL . . . . . . . . . . . . . . . . . .

90

5.1.4

Особые возможности и основные различия языка Microsoft
Jet и ANSI SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

5.2

Язык Query-by-Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
5.2.1

Основы языка QBE . . . . . . . . . . . . . . . . . . . . . . . . . . 112

5.2.2

Запрос по образцу (идеология MS Access) . . . . . . . . . . . . 113

6

Физическая организация баз данных

116

6.1

Структуры внешней памяти, методы организации индексов . . . . . . 116
6.1.1

Организация внешней памяти . . . . . . . . . . . . . . . . . . . . 116

6.1.2

Хранение таблиц в базе данных . . . . . . . . . . . . . . . . . . 118

6.1.3

Организация индексов, методы хранения и доступа
к данным . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

6.1.4

Словарь данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

6.1.5

Прочие объекты базы данных . . . . . . . . . . . . . . . . . . . . 126

6.2

Оптимизация работы с базами данных . . . . . . . . . . . . . . . . . . . 129

6.3

Экстенсиональная и интенсиональная части базы данных . . . . . . . 131

7

Системы управления базами данных

133

7.1

СУБД первого поколения . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

7.2

СУБД второго поколения — реляционные СУБД . . . . . . . . . . . . . 134
7.2.1

Архитектура СУБД второго поколения . . . . . . . . . . . . . . 134

7.2.2

СУБД FoxPro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

7.2.3

СУБД MS Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138

7.3

СУБД третьего поколения и объектно-ориентированные СУБД . . . . 141
7.3.1

Манифесты СУБД третьего поколения
и объектно-ориентированных СУБД . . . . . . . . . . . . . . . . 141

7.3.2

Общие понятия объектно-ориентированного подхода
к базам данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146


background image

Оглавление

5

7.3.3

Реализация объектно-ориентированного подхода в СУБД
Oracle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148

7.3.4

СУБД Cach´e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155

7.3.5

Перспективы развития СУБД . . . . . . . . . . . . . . . . . . . . 160

Заключение

162

Литература

163

Список условных обозначений и сокращений

165

Глоссарий

167