Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БД_2013_Задания / КонспектЛекций_БД_СоболеваНВ_2013.docx
Скачиваний:
125
Добавлен:
12.03.2015
Размер:
634.27 Кб
Скачать

МИНОБРНАУКИ РОССИИ

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«Ижевский государственный технический университет имени М.Т. Калашникова»

(ФГБОУ ВПО «ИжГТУ имени М.Т. Калашникова»)

Н.В. Соболева

Конспект лекций

по дисциплине

«Базы данных»

Рекомендовано учебно-методическим советом ФГБОУ ВПО «ИжГТУ имени М.Т. Калашникова» для использования в учебном процессе в качестве элемента ЭУМКД для студентов, обучающихся по направлению 2301100.62 «Информатика

и вычислительная техника» профили «Автоматизированные системы обработки информации и управления» и «Системы автоматизированного проектирования»

(форма обучения очная и заочная) при изучении дисциплины «Базы данных»

Ижевск 2013

Раздел «бд. Субд. Основные понятия» 8

Лекция №1 8

Введение в базы данных 8

1. Базы данных и информационные системы. Основные понятия 8

2. Жизненный цикл баз данных 10

3 Эксплуатационные характеристики базы данных 11

Раздел «БД. СУБД. Основные понятия» 14

Лекция №2 14

Введение в СУБД 14

1 Функции СУБД 14

2 Состояние рынка СУБД 16

Раздел «БД. СУБД. Основные понятия» 17

Лекция №3 17

Место баз данных в архитектуре ИС 17

1 Локальные ИС 17

2 ИС в файл-серверной архитектуре 18

3 ИС в клиент-серверной архитектуре 19

4 Двухзвенные модели архитектуры 20

5 Трехзвенные модели 22

6 Монитор транзакций 23

7 ИС в Internet и intranet 24

Раздел «Концептуальный уровень проектирования БД» 27

Лекция №4 27

Концептуальная модель данных. Сущности, атрибуты, ключи 27

1 Основные понятия 27

2 Задачи моделирования данных 27

3 Сущности 28

4 Атрибуты 30

5 Ключи 32

Раздел «Концептуальный уровень проектирования БД» 33

Лекция №5 33

Концептуальная модель данных. Связи. Классы и подклассы. Концептуальная схема 33

1 Связи 33

2 Классы и подклассы 35

3 Источники данных для концептуального проектирования 35

4 Построение концептуальной схемы 36

5 Анализ концептуальной модели 39

Раздел «Логический уровень проектирования БД» 41

Лекция №6 41

Модели данных логического уровня. Введение 41

1 Исходные данные для проектирования 41

2 Результаты проектирования 41

3 Модели данных логического уровня 41

3.1 Иерархическая модель 42

3.2 Сетевая модель 42

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

3.4 Объектно-реляционная модель 46

3.5 Объектно-ориентированная модель данных 46

3.6 Модель данных на основе XML 49

Раздел «Реляционная теория БД» 51

Лекция №7 51

Реляционная модель данных. Основные понятия 51

1 Словарь терминов 51

2 Целостность реляционной модели 52

3 Математическое описание реляционной модели 54

Раздел «Реляционная теория БД» 57

Лекция №8 57

Реляционная алгебра и реляционное исчисление 57

1 Реляционная алгебра. Теоретико-множественные операции 57

2 Реляционная алгебра. Специальные реляционные операции 58

3 Дополнительные реляционные операции 60

4 Примеры записи запросов 61

5 Реляционное исчисление 62

Раздел «Реляционная теория БД» 63

Лекция №9 63

Нормализация реляционной модели. Функциональные зависимости 63

1 Что такое нормализация? 63

2 Функциональная зависимость 64

3 Теоремы о функциональных зависимостях 66

Раздел «Реляционная теория БД» 67

Лекция №10 67

Нормальные формы отношений. Метод декомпозиции 67

1 Нормальные формы отношений 67

5 Алгоритм нормализации отношений. Метод декомпозиции 69

6 Другие нормальные формы 72

Раздел «Реляционная теория БД» 74

Лекция №11 74

Проектирование реляционной модели на основе концептуальной модели 74

1 Реализация бинарной связи 1:1 («один-к-одному») 74

1.1 Связь обязательная 74

1.2 Связь частичная для одной из сущностей 75

1.3 Связь частичная для обеих сущностей 76

2 Реализация бинарной связи 1:m («один-ко-многим») 77

2.1 Связь обязательная для m-связной сущности 77

2.2 Связь частичная для m-связной сущности 78

3 Бинарная связь n:m («многие-ко-многим») 79

4 Связи более высокого порядка (n-арные) 81

5 Классы и подклассы 81

Раздел «Реляционная теория БД» 83

Лекция №12 83

Стандарт IDEF1X 83

1 Стандарты моделирования данных 83

2 Основные понятия стандарта IDEF1X 84

3 Графический язык IDEF1X 85

Раздел «Физический уровень проектирования БД» 89

Лекция №13 89

Физическая модель данных 89

1 Исходные данные для физического проектирования 89

2 Возможная методика перехода к физической модели на примере реляционной модели 90

2.1 Преобразование отношений в таблицы 90

2.2 Преобразование атрибутов в поля (столбцы) таблиц 90

2.3 Преобразование доменов в типы данных 90

2.4 Первичные ключи 91

2.5 Порядок расположения столбцов 92

2.6 Создание ссылочных ограничений 93

3 Факторы, влияющие на производительность БД 93

3.1 Индексы 93

3.2 Денормализация 96

Раздел «Язык SQL» 99

Лекция №14 99

Введение в язык SQL. Команда Select 99

1 Стандарты 99

2 Возможности SQL 100

3 Запросы на выборку данных 101

4 Примеры запросов 102

Раздел «Язык SQL» 105

Лекция №15 105

Команды определения данных 105

1 Команда CREATE TABLE 105

2 Команда ALTER TABLE 107

3 Поддержка ограничений целостности 109

4. Редактирование записей в таблице 111

Раздел «Язык SQL» 114

Лекция №16 114

Дополнительные аспекты реляционной технологии 114

1 Проблемы, требующие решения 114

2 Запросы 115

3 Представления 116

4 Курсоры 117

5 Хранимые процедуры 117

6 Триггеры 118

7 Функции, определяемые пользователем 118

8 Транзакции 119

СОДЕРЖАНИЕ

Раздел«БД. СУБД. Основные понятия»5

Лекция №15

Введение в базы данных 5

1. Базы данных и информационные системы. Основные понятия 5

2. Жизненный цикл баз данных 7

3 Эксплуатационные характеристики базы данных 8

Раздел«БД. СУБД. Основные понятия»11

Лекция №211

Введение в СУБД11

1 Функции СУБД 11

2 Состояние рынка СУБД 13

Раздел«БД. СУБД. Основные понятия»14

Лекция №314

Место баз данных в архитектуре ИС14

1 Локальные ИС 14

2 ИС в файл-серверной архитектуре 15

3 ИС в клиент-серверной архитектуре 16

4 Двухзвенные модели архитектуры 17

5 Трехзвенные модели 19

6 Монитор транзакций 20

7 ИС в Internet и intranet 21

Раздел «Концептуальный уровень проектирования БД»24

Лекция №424

Концептуальная модель данных. Сущности, атрибуты, ключи24

1 Основные понятия 24

2 Задачи моделирования данных 24

3 Сущности 25

4 Атрибуты 27

5 Ключи 29

Раздел «Концептуальный уровень проектирования БД»30

Лекция №530

Концептуальная модель данных. Связи. Классы и подклассы. Концептуальная схема30

1 Связи 30

2 Классы и подклассы 32

3 Источники данных для концептуального проектирования 32

4 Построение концептуальной схемы 33

5 Анализ концептуальной модели 36

Раздел «Логический уровень проектирования БД»37

Лекция №637

Модели данных логического уровня. Введение37

1 Исходные данные для проектирования 37

2 Результаты проектирования 37

3 Модели данных логического уровня 37

3.1 Иерархическая модель38

3.2 Сетевая модель38

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

3.4 Объектно-реляционная модель42

3.5 Объектно-ориентированная модель данных42

3.6 Модель данных на основе XML45

Раздел «Реляционная теория БД»47

Лекция №747

Реляционная модель данных. Основные понятия47

1 Словарь терминов 47

2 Целостность реляционной модели 48

3 Математическое описание реляционной модели 50

Раздел «Реляционная теория БД»53

Лекция №853

Реляционная алгебра и реляционное исчисление53

1 Реляционная алгебра. Теоретико-множественные операции 53

2 Реляционная алгебра. Специальные реляционные операции 54

3 Дополнительные реляционные операции 56

4 Примеры записи запросов 57

5 Реляционное исчисление 58

Раздел «Реляционная теория БД»59

Лекция №959

Нормализация реляционной модели. Функциональные зависимости59

1 Что такое нормализация? 59

2 Функциональная зависимость 60

3 Теоремы о функциональных зависимостях 61

Раздел «Реляционная теория БД»63

Лекция №1063

Нормальные формы отношений. Метод декомпозиции63

1 Нормальные формы отношений 63

5 Алгоритм нормализации отношений. Метод декомпозиции 65

6 Другие нормальные формы 68

Раздел «Реляционная теория БД»70

Лекция №1170

Проектирование реляционной модели на основе концептуальной модели70

1 Реализация бинарной связи 1:1 («один-к-одному») 70

1.1 Связь обязательная70

1.2 Связь частичная для одной из сущностей71

1.3 Связь частичная для обеих сущностей72

2 Реализация бинарной связи 1:m(«один-ко-многим») 73

2.1 Связь обязательная для m-связной сущности73

2.2 Связь частичная для m-связной сущности74

3 Бинарная связь n:m(«многие-ко-многим») 75

4 Связи более высокого порядка (n-арные) 76

5 Классы и подклассы 77

Раздел «Реляционная теория БД»79

Лекция №1279

Стандарт IDEF1X79

1 Стандарты моделирования данных 79

2 Основные понятия стандарта IDEF1X79

3 Графический язык IDEF1X81

Раздел «Физический уровень проектирования БД»84

Лекция №1384

Физическая модель данных84

1 Исходные данные для физического проектирования 84

2 Возможная методика перехода к физической модели на примере реляционной модели 85

2.1 Преобразование отношений в таблицы85

2.2 Преобразование атрибутов в поля (столбцы) таблиц85

2.3 Преобразование доменов в типы данных85

2.4 Первичные ключи86

2.5 Порядок расположения столбцов87

2.6 Создание ссылочных ограничений88

3 Факторы, влияющие на производительность БД 88

3.1 Индексы88

3.2 Денормализация91

Раздел «Язык SQL»93

Лекция №1493

Введение в язык SQL. Команда Select93

1 Стандарты 93

2 Возможности SQL94

3 Запросы на выборку данных 95

4 Примеры запросов 96

Раздел «Язык SQL»99

Лекция №1599

Команды определения данных99

1 Команда CREATETABLE99

2 Команда ALTERTABLE101

3 Поддержка ограничений целостности 102

4. Редактирование записей в таблице 105

Раздел «Язык SQL»107

Лекция №16107

Дополнительные аспекты реляционной технологии107

1 Проблемы, требующие решения 107

2 Запросы 108

3 Представления 109

4 Курсоры 110

5 Хранимые процедуры 110

6 Триггеры 111

7 Функции, определяемые пользователем 111

8 Транзакции 112

Раздел «БД. СУБД. Основные понятия»

Лекция №1

Введение в базы данных

1. Базы данных и информационные системы. Основные понятия

Информационная система (ИС) - система, реализующая автоматизированный сбор, обработку и манипулирование данными и включающая технические средства обработки данных, программное обеспечение и соответствующий персонал.

Информационная технология (ИТ) - это совокупность методов, производственных процессов и программно-технических средств, объединенных в технологическую цепочку, обеспечивающую сбор, обработку, хранение, передачу и отображение информации [http://technologies.su/ ].

Банк данных – это разновидность ИС, которая обеспечивает централизованное накопление и коллективное использование данных.

База данных (БД) – именованная совокупность данных, отражающая состояние объектов рассматриваемой предметной области (ПО) и отношения объектов между собой и хранящаяся на машинных носителях.

СУБД – совокупность языковых и программных средств, предназначенных для создания, ведения и совместного использования баз данных. СУБД обеспечивает независимость данных и программ.

Рассмотрим некоторые определения более подробно.

Первое, на что следует обратить внимание, это отсутствие единого стандартного определения понятия ИС.

Так, в Федеральном законе РФ от 27 июня 2006 г. № 149 «Об информации, информационных технологиях и о защите информации» даётся следующее определение:

«ИС – это совокупность содержащейся в базах данных информации и обеспечивающих её обработку информационных технологий и технических средств».

Определение из ГОСТ РВ 51987-2002 «Информационная технология. Комплекс стандартов на АС. Типовые требования и показатели качества функционирования информационных систем»:

«ИС – совокупность информации, процедур, персонала, аппаратного и программного обеспечения, объединённых регулируемыми отношениями для осуществления целенаправленной деятельности».

При изучении дисциплины «Базы данных» следует обратить внимание на следующие важные аспекты всех рассмотренных вариантов определений понятия ИС:

  • ИС – это организационно-техническая система, т.е. персонал – одна из частей ИС;

  • основное назначение ИС – предоставление информации, необходимой для осуществления целенаправленной деятельности, например, для управления предприятием.

Понятие ИТ имеет много толкований. Для изучения дисциплины «Базы данных» важно обратить внимание на следующие моменты:

  • ИТ (в «узком» смысле этого слова) - это компьютерная технология, реализующая сбор, обработку и выдачу информации;

  • большинство современных ИТ основано на работе с базами данных.

Термин «Банк данных» можно отнести к категории устаревших. В настоящее время часто используется в узком смысле этого слова для обозначения больших баз данных (см., например, Федеральный закон о государственном банке данных о детях, оставшихся без попечения родителей от 15 марта 2001 года).

Ближайшим по смыслу к банку данных современным термином является центр обработки данных.

Дата-центр (от англ. data center), или центр (хранения и) обработки данных (ЦОД/ЦХОД) — это специализированное здание для размещения (хостинга) серверного и сетевого оборудования и подключения абонентов к каналам сети Интернет.

Дата-центр исполняет функции обработки, хранения и распространения информации, как правило, в интересах корпоративных клиентов — он ориентирован на решение бизнес-задач путём предоставления информационных услуг [определениеиз википедии].

База данных – это основное понятие, рассматриваемое в рамках дисциплины «Базы данных». Возможное толкование данного понятия и альтернативные определения можно посмотреть в википедии.

Для изучения всех последующих разделов дисциплины важно определить границы этого понятия. Будем считать базой данных только те структуры данных, которые создаются, хранятся и обрабатываются при поддержке СУБД.