Базы данных Преподаватель: Свяжин Сергей Олегович.

Презентация:



Advertisements
Похожие презентации
БАЗЫ ДАННЫХ ЛЕКЦИЯ 12. тема: ОСНОВЫ ЯЗЫКА SQL Общие сведения SQL структурированный язык запросов (Structured Query Language)
Advertisements

Реляционные базы данных N-арное отношение – подмножество декартова произведения N множеств возможных значений (доменов, типов данных, атрибутов) Изображение.
База данных База данных – это конкретная предметная область, описанная с помощью таблиц.
SQL SQL (Structured Query Language Структурированный язык запросов) язык управления базами данных для реляционных баз данных.
Тема 1. Базы данных специального назначения Лекция 1: Введение в базы данных Учебные цели занятия: Изучить: 1)основные понятия теории баз данных, 2)основные.
Введение в SQL (НЕ select) Затрагиваемые темы Роль языка SQL. Части SQL Роль языка SQL. Части SQL Администрирование БД: привилегии (DCL) Администрирование.
Базы данных Михайлова Елена Георгиевна, мат.-мех. ф-т, кафедра информатики, доцент.
Тема 6. Технология разработки реляционной модели данных Вопросы 1.Объекты реляционных БД, терминология 2.Разработка структуры БД 3.Нормализация отношений.
Реляционная модель данных Разработана Е.Ф.Коддом (E.F.Codd) в 1970 г.
База данных и СУБД: основные понятия. База данных: общее понятие База данных: хранилище информации отражает объект реального мира имитирует деятельность.
Проектирование БД. Нормальные формы В теории реляционных баз данных обычно выделяется следующая последовательность нормальных форм: первая нормальная.
РЕЛЯЦИОННАЯ АЛГЕБРА. Элементы РМД и формы их представления Сущность – это объект любой природы. Данные о сущности хранятся в отношении (таблице). Атрибуты.
Базы данных Реляционная база данных MS Access. Повторение База данных организованная совокупность данных из какой-либо предметной области, предназначенная.
Лекция 16 Лекция 16 Основы SQL. Описание отношений, доменов, ограничений целостности, представлений данных. Реализация операций реляционной алгебры в SQL.
Лекция 3 Домены Ограничения на значения столбцов Создание, изменение и удаление таблиц Ключи и ссылочная целостность Защита таблиц.
Вопрос I. Основные понятия. Вопрос 2. Проектирование баз данных.
1 БАЗЫ ДАННЫХ Использование SQL для построения запросов. ЗАНЯТИЕ 6 ПУГАЧЁВ Ю.В. Учитель информатики Харьковская общеобразовательная школа І-ІІІ ступеней.
Лекция 15 Лекция 15 Управление реляционными базами данных. Языки определения данных и языки манипулирования данными. Способы выражения запросов: процедурный.
Реляционная модель – это особый метод рассмотрения данных, содержащий данные в виде таблиц, способов работы и манипуляции с ними в виде связей. структура,
Введение в базы данных. Реляционное проектирование Затрагиваемые темы Проблемы, решаемые хранением данных в СУБД Проблемы, решаемые хранением данных в.
Транксрипт:

Базы данных Преподаватель: Свяжин Сергей Олегович

Система баз данных Система баз данных – это компьютеризированная система хранения записей, основное назначение которой хранить информацию, предоставляя пользователям средства её извлечения и модификации. Основные компоненты системы баз данных: данные; аппаратное обеспечение; программное обеспечение; пользователи.

Схема системы баз данных

Свойства данных интегрированность; разделяемость. Аппаратное обеспечение Состав аппаратного обеспечения: тома вторичной памяти; аппаратный процессор.

Программное обеспечение Виды программного обеспечения: СУБД; утилиты; средства разработки приложений; средства проектирования; генераторы отчетов; менеджер транзакций; и т.д.

Пользователи Группы пользователей: прикладные программисты; конечные пользователи; администраторы базы данных.

База данных – это некоторый набор постоянных данных, используемых прикладными системами какого-либо предприятия

Сущности и связи (логическая структура базы данных)

Свойства – данные, которые требуется хранить о сущности

Преимущества использования систем баз данных компактность; скорость; низкие трудозатраты; актуальность.

Модель данных – это абстрактное, самодостаточное, логическое определение объектов, операторов и прочих элементов, в совокупности составляющих абстрактную машину, с которой взаимодействует пользователь.

Модели данных иерархическая; инвертированных списков; сетевая; реляционная; объектная; многомерная; логическая.

Реляционная модель – это система, основанная на следующих принципах: данные представляются пользователю в виде таблиц; таблицы удовлетворяют определенным условиям целостности; пользователю предоставляются операторы (например, для выборки данных), позволяющие генерировать новые таблицы на основании уже существующих. В основе реляционной модели лежит формальная математическая теория – реляционная алгебра.

Пример базы данных деталей

SQL – структурированный язык запросов операторы определения данных (Data Definition Language, DDL) – CREATE создает объект БД (саму базу, таблицу, представление, пользователя и т. д.) – ALTER изменяет объект – DROP удаляет объект операторы манипуляции данными (Data Manipulation Language, DML) – SELECT считывает данные, удовлетворяющие заданным условиям – INSERT добавляет новые данные – UPDATE изменяет существующие данные – DELETE удаляет данные операторы определения доступа к данным (Data Control Language, DCL) – GRANT предоставляет пользователю (группе) разрешения на определенные операции с объектом – REVOKE отзывает ранее выданные разрешения – DENY задает запрет, имеющий приоритет над разрешением операторы управления транзакциями (Transaction Control Language, TCL) – COMMIT применяет транзакцию. – ROLLBACK откатывает все изменения, сделанные в контексте текущей транзакции. – SAVEPOINT делит транзакцию на более мелкие участки.

Оператор SELECT SELECT [ALL | DISTINCT] FROM WHERE GROUP BY HAVING ORDER BY

Обобщающие функции языка SQL: SUM - сумма COUNT - количество AVG - среднее MAX - максимум MIN - минимум Логические операторы OR - или AND - и NOT - не

Домашнее задание 1.Опередить номер, название и общий объем поставки деталей, для которых объем поставки превышает Определить количество деталей синего (blue) цвета.

Ответ 1. SELECT P.P#, P.PNAME, SUM(SP.QTY) FROM P JOIN SP GROUP BY P.P#, P.PNAME HAVING SUM(SP.QTY) > SELECT COUNT(*) FROM P WHERE PCOLOR = Blue

Целостность данных – это степень точности и корректности хранящейся в базе информации.

Классификация ограничений в реляционной модели Ограничения целостности состояния: ограничение целостности типа; ограничение целостности атрибута; ограничение целостности отношения; ограничение целостности базы данных. Ограничения целостности перехода.

Ключи потенциальные ключи; первичные и альтернативные ключи; внешние ключи.

Потенциальный ключ Пусть K – подмножество множества атрибутов отношения R. K будет потенциальным ключом отношения R тогда и только тогда, когда оно обладает следующими свойствами: Уникальность. Никакие допустимые значения отношения R не содержат двух различных кортежей (записей) с одинаковыми значениями атрибутов множества K. Неизбыточность. Никакое из собственных подможеств множества K не обладает свойствами уникальности.

Первичный и альтернативные ключи Один из потенциальных ключей назначается первичным, остальные называются альтернативными.

Внешние ключи Пусть R2 – некоторое отношение. Тогда внешний ключ (FK) в отношении R2 представляет собой множество атрибутов этого отношения, такое, что: существует отношение R1 с потенциальным ключом CK; каждое значение внешнего ключа FK в текущем состоянии отношения R2 обязательно совпадает со значением ключа CK некоторого кортежа (записи) в текущем состоянии R1.

Ссылочные операции ON DELETE CASCADE; ON DELETE RESTRICT; ON DELETE NO ACTION.

Средства языка SQL для обеспечения целостности ограничения домена; ограничения базовой таблицы; общие ограничения (утверждения).

Ограничения домена CREATE DOMAIN COLOR CHAR(6) DEFAULT ??? CONSTRAINT VALID_COLORS CHECK (VALUE IN (Yellow, Blue, ???))

Ограничения базовой таблицы определение потенциального ключа – UNIQUE ( ) – PRIMARY KEY ( ) определение внешнего ключа – FOREIGN KEY ( ) REFERENCES [( )] [ON DELETE ] [ON UPDATE ], где это либо NO ACTION, CASCADE, SET DEFAULT, SET NULL определение «проверочного условия» – CHECK ( )

Утверждения CREATE ASSERTION CHECK (условное выражение)

Понятие функциональной зависимости Пусть R является отношением, а X и Y – произвольные подмножества множества атрибутов отношения R. Тогда Y (зависимая часть) функционально зависит от X (детерминант), что в символическом виде записывается X -> Y тогда и только тогда, когда для любого допустимого значения отношения R каждое значение множества X связано с точностью с одним значением Y

Понятие нормализации Нормальная форма свойство отношения в реляционной модели данных, характеризующее его с точки зрения избыточности, потенциально приводящей к логически ошибочным результатам выборки или изменения данных. Нормальная форма определяется как совокупность требований, которым должно удовлетворять отношение. Нормализация – процесс преобразования отношений базы данных к виду, отвечающему нормальным формам. Цель нормализации – уменьшение потенциальной противоречивости хранимой в базе данных информации.

Нормальные формы

Нормальная форма Бойса-Кодда (НФБК) Отношение находится в НФБК тогда и только тогда, когда каждая ее нетривиальная и неприводимая слева функциональная зависимость имеет в качестве своего детерминанта некоторый потенциальный ключ. Нахождение отношения в НБФК позволяет устранить большинство противоречий хранимой в отношении информации.

Методы проектирования баз данных метод декомпозиции; семантическое моделирование.

Основные понятия семантической концепции

Пример ER-диаграммы Работник Подразделение относится N 1 Проект руководит 1 N участвует N N

Характеристики связей степень связи: – один-к-одному; – один-ко-многим; – многие-ко-многим класс принадлежности – обязательное; – необязательно

Правила генерации таблиц для различных видов связей один-к-одному – на основе двух связанных сущностей генерируется одна таблица; один-ко-многим и класс принадлежности n-связной сущности является обязательным - на основе двух связанных сущностей генерируется 2 таблицы по одной на каждую сущность; один-ко-многим и класс принадлежности n-связной сущности является необязательным - на основе двух связанных сущностей генерируется 3 таблицы по одной на каждую сущность и одна для связи; многие-ко-многим - на основе двух связанных сущностей генерируется 3 таблицы по одной на каждую сущность и одна для связи;

Этапы проектирования базы данных с использованием метода «сущность-связь» («entity-relashionship») 1.Выделение сущностей и определение их свойств 2.Определение связей и их характеристик 3.Построение ER-диаграммы 4.Генерация предварительного набора отношений 5.Проверка отношений на НФБК 6.Проведение нормализации (при необходимости) и генерация окончательного набора отношений

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

Домашнее задание Построить ER-диаграмму для следующей предметной области: Существуют спектакли, для спектаклей заданы роли, при этом каждая роль может относиться только к одному спектаклю. Существуют актеры, которые играют роли. Каждый актер может играть несколько ролей, каждая роль может играться несколькими актерами.