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

Добавлен: 28.11.2018

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

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

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

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

 

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

И РАДИОЭЛЕКТРОНИКИ (ТУСУР) 

 

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

 
 
 
 

Д. П. Вагнер 

 
 
 
 

 

БАЗЫ ДАННЫХ 

 

 
 
 
 

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

 
 
 
 

 
 
 
 

 

Томск 

2018


background image

УДК  004.65(075.8) 
ББК  32.973.233-018.2я73 
 

В 125 

 

Рецензенты: 

С. И. Колесникова, д-р техн. наук, профессор кафедры высшей математики  

и математического моделирования Национального исследовательского  

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

М. А. Афонасова, д-р экон. наук, профессор, зав. кафедрой менеджмента  

Томского государственного университета систем управления  

и радиоэлектроники 

 

Вагнер Д. П. 

В 125 

Базы данных : учебное пособие / Д. П. Вагнер. – Томск : ФДО, 

ТУСУР, 2018. – 133 с. 

 
В учебном пособии  представлены  основы  теории и  практики  использо-

вания баз данных. Приведены основные понятия реляционных моделей данных, 
а также синтаксис и примеры использования языка SQL. Особое внимание уде-
лено описанию  процесса  проектирования на основе использования принципов 
нормализации и применения ER-моделей. 

 
 
 
 
 
 
 
 
 
 
 
 

© Вагнер Д. П., 2018 
© Оформление. 

ФДО, ТУСУР, 2018 


background image

Оглавление 

Введение ............................................................................................................ 5

 

1 Введение в теорию баз данных .................................................................. 7

 

1.1 Данные и информация ............................................................................. 7

 

1.2 Базы данных и СУБД ............................................................................... 8

 

1.3 Классификация СУБД ........................................................................... 12

 

1.4 Представление данных в БД ................................................................. 14

 

1.5 Модели данных ...................................................................................... 17

 

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

 

1.5.2 Сетевая модель ................................................................................. 19

 

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

 

1.5.4 Объектно-ориентированная модель ............................................... 22

 

1.5.5 Многомерная модель ....................................................................... 23

 

1.5.6 Постреляционная модель ................................................................ 25

 

2 Реляционная модель данных ................................................................... 26

 

2.1 Определения модели .............................................................................. 26

 

2.2 Ключевые атрибуты ............................................................................... 29

 

2.3 Связи в БД ............................................................................................... 33

 

2.3.1 Связь «один-к-одному» ................................................................... 33

 

2.3.2 Связь «один-ко-многим» ................................................................. 35

 

2.3.3 Связь «многие-ко-многим» ............................................................. 37

 

2.3.4 Управление связанными записями в БД ....................................... 38

 

2.4 Реляционные СУБД ............................................................................... 40

 

2.4.1 Microsoft Access ............................................................................... 40

 

2.4.2 MySQL .............................................................................................. 46

 

3 Язык SQL ..................................................................................................... 50

 

3.1 История SQL ........................................................................................... 50

 

3.2 Основные операторы языка SQL .......................................................... 51

 

3.3 Типы данных ........................................................................................... 52

 

3.4 Оператор SELECT .................................................................................. 54

 

3.5 Операторы DML ..................................................................................... 59

 

3.5.1 INSERT .............................................................................................. 59

 

3.5.2 UPDATE ............................................................................................ 59

 

3.5.3 DELETE ............................................................................................ 60

 

3.6 Групповые функции ............................................................................... 61

 

3.7 Запросы к нескольким таблицам .......................................................... 64

 


background image

3.7.1 Декартово произведение записей таблиц ...................................... 65

 

3.7.2 Соединение таблиц .......................................................................... 69

 

3.7.3 Объединение таблиц ........................................................................ 72

 

4 Проектирование баз данных .................................................................... 73

 

4.1 Жизненный цикл БД .............................................................................. 73

 

4.2 Нормализация БД ................................................................................... 78

 

4.2.1 Дублирование данных ..................................................................... 79

 

4.2.2 Аномалии .......................................................................................... 81

 

4.2.3 Теория нормализации ...................................................................... 82

 

4.2.4 Нормальные формы ......................................................................... 85

 

4.3 Инфологическое проектирование БД .................................................. 92

 

4.3.1 Модель «сущность – связь» ............................................................ 93

 

4.3.2 Виды связей между сущностями .................................................... 96

 

4.3.3 Методология проектирования на основе ER-моделей ............... 102

 

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

 

5 Администрирование баз данных ........................................................... 113

 

5.1 Безопасность БД ................................................................................... 114

 

5.2 Резервное копирование БД ................................................................. 117

 

5.3 Настройка доступа к БД ...................................................................... 119

 

5.4 Дополнительные инструменты защиты БД ....................................... 121

 

Заключение ................................................................................................... 124

 

Литература.................................................................................................... 125

 

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

 

Глоссарий ...................................................................................................... 129

 

Приложение А SQL-код для создания базы данных ............................ 132

 

 
 

 


background image

Введение 

В настоящее  время  информация  является  одним  из  ключевых  факторов 

эффективной деятельности во всех сферах жизни человека. С каждым годом мы 
получаем всё большие объемы информации, соответственно, повышаются тре-
бования  к  таким  аспектам,  как  поиск,  анализ,  обработка  и  скорость  передачи 
информации.  Функционирование  любой  организации  немыслимо  без  осу-
ществления процессов хранения и обработки информации, чаще всего реализо-
ванных  с  помощью  инструментария  баз  данных  и  информационных  систем. 
Несомненно, в современном мире всё более актуальным становится знание ос-
нов функционирования и проектирования баз данных, а также применения со-
временных  технологий  и  программных  продуктов  систем  управления  базами 
данных. 

История развития баз данных берет своё начало с конца 1960-х гг., когда 

была введена в эксплуатацию первая промышленная система управления база-
ми данных (СУБД) IMS фирмы IBM. На самом деле направление использова-
ния вычислительной техники, связанное с хранением данных в виде баз данных 
на первых этапах развития несколько отставало от сферы непосредственной об-
работки данных. Это было связано прежде всего с ограниченными аппаратны-
ми возможностями запоминающих устройств того времени. В дальнейшем раз-
витие  аппаратных  возможностей  устройств,  а  также  разработка  реляционной 
модели данных известным американским математиком Э. Ф. Коддом привели к 
существенному развитию и последующему широкому распространению систем 
управления базами данных практически во всех сферах деятельности. 

Пособие «Базы данных» включает 5 глав. 
В первой  главе  определяются  основные  понятия  теории  баз  данных,  да-

ются функции и классификация СУБД, а также описание моделей данных. 

Вторая глава посвящена описанию реляционной модели данных. 
В третьей главе приведено описание синтаксиса основных команд языка 

SQL. 

Четвертая  глава  посвящена  описанию процесса проектирования баз дан-

ных на основе принципов нормализации и построения ER-диаграмм. 

В пятой  главе приведено описание  проблем,  связанных  с администриро-

ванием и защитой баз данных.