- •Банки и базы данных. Модели данных. Системы управления базами данных
- •Введение
- •Система баз данных
- •Файловые системы
- •Структуры файлов
- •Именование файлов
- •Понятие БД и СУБД
- •Система баз данных
- •Понятие СУБД
- •Уровни абстракции в СУБД. Функции абстрактных данных
- •Функции СУБД
- •Экспертные системы и базы знаний
- •Экспертные системы и базы знаний
- •Классификация баз данных
- •1) Классификация БД по модели представления данных:
- •1) Классификация БД по модели представления данных:
- •1) Классификация БД по модели представления данных:
- •1) Классификация БД по модели представления данных:
- •2) Классификация БД по организации хранения данных и обращения к ним :
- •3) Классификация БД по типу хранимой информации:
- •Свойства БД
- •Компоненты СУБД
- •Логическое и физическое описание данных
- •Компоненты банка данных
- •Требования,
- •Компоненты инфологической модели
- •ПОСТРОЕНИЕ МОДЕЛИ
- •Связи «объект - свойство»
- •Модель сущность-связь
- •Модель сущность-связь
- •Три типа бинарных связей
- •Более сложные элементы модели сущность-связь
- •Более сложные элементы модели сущность-связь
- •Диаграммы сущность- связь
- •Общие характеристики ранних систем
- •Системы, основанные на инвертированных списках
- •Структуры данных на инвертированных списках
- •Манипулирование данными
- •Иерархическая модель
- •Иерархические структуры данных
- •Ограничения целостности в иерархической модели
- •Сетевая модель
- •Сетевые структуры данных
- •Основные достоинства и недостатки ранних СУБД
- •История реляционной модели
- •Недостатки реляционной модели
- •Основные определения
- •Основные определения
- •Эквиваленты
- •Ограничения
- •Ограничения
- •Языки манипулирования данными
- •Получение реляционной схемы из ER-схемы
- •Получение реляционной схемы из ER-схемы
- •Реляционная алгебра
- •Традиционные операции
- •Специальные операции
- •Специальные операции
- •Свойства операций реляционной алгебры
- •Реляционное исчисление
- •Разница между реляционной алгеброй и реляционным исчислением
- •Алгебраическая версия этого запроса
- •Этот же запрос в терминах реляционного исчисления
- •Вывод
- •Зачем нужна нормализация
- •Нормальные формы
- •Нормальные формы
- •Определение
- •Функциональная
- •1-я нормальная форма
- •2-я нормальная форма
- •3-я нормальная форма
- •Нормальная форма Бойса- Кодда
- •4-я нормальная форма
- •5-я нормальная форма
- •Доменно-ключевая нормальная форма
- •История SQL
- •История SQL
- •Некоторые популярные диалекты SQL:
- •Достоинства языка SQL:
- •Синтаксические
- •Соглашения об именах
- •Правила создания идентификаторов
- •Константы
- •Операторы
- •Категории операторов:
- •Арифметические
- •Оператор присваивания
- •Побитовые операторы
- •Операторы сравнения
- •Логические операторы
- •Унарные операторы
- •Приоритет операторов
- •Язык определения данных
- •Типы данных
- •Типы данных
- •Типы данных
- •Создание домена
- •Изменение домена
- •Схема
- •Создание таблицы
- •Параметры
- •Изменение таблицы
- •Изменение таблицы
- •Изменение таблицы
- •Язык манипулирования данными
- •Оператор INSERT
- •Оператор UPDATE
- •Оператор DELETE
- •Оператор SELECT
- •Оператор SELECT
- •Агрегатные функции в SQL
- •Виды агрегатный функций
- •Использование агрегатных функций
- •Выполнение агрегатных функций
- •Группировка для агрегатных функций
- •Использование HAVING
- •Проекция и выборка
- •Декартовое произведение
- •Предварительные
- •Локальная автономия
- •Независимость от центрального узла
- •Непрерывное функционирование
- •Независимость от расположения
- •Независимость от фрагментации
- •Независимость от репликации
- •Обработка распределенных запросов
- •Управление распределенными транзакциями
- •Распространение
- •Распределенные базы данных и Интернет.
- •Системы типа клиент/сервер
- •Серверы баз данных
- •БАЗЫ ДАННЫХ В INTERNET
- •Обзор ПТК данного вида
- •Техническое задание на разработку структур ПТК
- •Требования к ПТК
- •Требования к ПТК
- •Требования к ПТК
- •Эскизный проект структуры ПО ПТК
- •Эксплуатация баз данных. Защита баз данных. Управление транзакциями. Управление параллельным доступом. Заключение.
- •Понятие восстановления системы
- •Понятие транзакции
- •Восстановление
- •Свойства АСИД
- •Восстановление после отказов системы
- •Параллелизм. Проблемы параллелизма
- •Проблема потери результатов обновления
- •Проблема незафиксированной зависимости
- •Проблема несовместимого анализа
- •Понятие блокировки
- •Решение проблем параллелизма
- •Проблема потери результатов обновления
- •Проблема незафиксированной зависимости
- •Проблема незафиксированной зависимости
- •Тупиковые ситуации
- •СПАСИБО ЗА ВНИМАНИЕ !
Разница между реляционной алгеброй и реляционным исчислением
Реляционная алгебра в явном виде предоставляет набор операций (соединение, объединение,
проекция и т.д.), которые можно использовать,
чтобы сообщить системе, как в базе данных из определенных отношений построить некоторое требуемое отношение, а реляционное исчисление просто представляет систему обозначений для определения требуемого отношения в терминах данных отношений. Например, рассмотрим запрос "Выбрать номера поставщиков и названия
городов, в которых находятся поставщики детали с номером 'Р2".
Алгебраическая версия этого запроса
Сначала выполнить соединение отношения поставщиков S и отношения поставок SP по атрибуту S#.
Далее выбрать из результата этого соединения кортежи с номером детали 'Р2'.
И наконец выполнить для результата этой выборки операцию проекции по атрибутам S# и CITY.
Этот же запрос в терминах реляционного исчисления
Получить атрибуты Si и CITY для таких поставщиков, для которых в отношении SP существует запись о поставке с тем же значением атрибута S# и со значением атрибута Р#, равным 'Р2'.
Вывод
На самом деле реляционная алгебра и реляционное исчисление логически эквивалентны. Каждому выражению в алгебре соответствует эквивалентное выражение в исчислении, и точно так каждому выражению в исчислении соответствует эквивалентное выражение в алгебре. Это означает, что между ними существует взаимнооднозначное соответствие, а различия связаны лишь с разными стилями выражения: исчисление ближе к естественному языку, а алгебра — к языку программирования.
Зачем нужна нормализация
3. Аномалии включения. В базу данных не может быть записан
Обратимся24. АномалииПотенциальнаякудалениясхемепротиворечивостьотношения. Обратная проблема(аномалиивозникает
адрес поставщика, если он в настоящее время не поставляет по
ПОСТАВЩИКИ1обновления)при. Избыточнонеобходимости(НАЗВ. В ПОСТ,ледствиетьудаления. АдресАДРЕСизбыточностиПОСТ,поставщикавсех ТОВАР,товаров,ЦЕНА)мы можем
меньш й мере один овар. Хуже того, ТОВАР НАЗВ ПОСТ
Вповторяетсяобновпоставобразуютсвязилясключтьемыхэ адресойданногоданнымсхемойдляпоставщикаотношения,каждогопоставщиком,возникаетпоискв дномставляемогокортежейвследствиеесколькокортеже,чего
товаранеопрмыоставляяпроблем:непреднамеренноделен. егоы инеизменнымзначениямиутрачив ключеваемдругомможетего .адресбыть . затруднительным или невозможным.
НАЗВ_ПОСТ |
АДРЕС_ПОСТ |
ТОВАР |
ЦЕНА |
АГАТА-ИМПЕКС |
ул Ата-тюрк 208 |
Компьютер P |
2 000 |
|
|
IV |
000 |
НУРОН |
ул Навои 158 |
Монитор LCD |
254 000 |
|
|
17” |
|
TS-TECHNOLOGY |
ул Янгиюльская 64 |
Компьютер P |
1 800 |
|
|
IV |
000 |
НУРОН |
ул Навои 158 |
Клавиатура |
25 000 |
SHARIFA-T |
Чиланзар-6 64 |
Мышь |
15 000 |
Нормальные формы
Нормальные формы
Основные свойства нормальных форм:
каждая следующая нормальная форма в некотором смысле лучше предыдущей;
при переходе к следующей нормальной форме свойства предыдущих нормальных свойств сохраняются.
Воснове процесса проектирования лежит метод нормализации, декомпозиция отношения, находящегося в предыдущей нормальной форме, в два или более отношения, удовлетворяющих требованиям следующей нормальной формы.
Определение
нормализации
Нормализация — это процесс преобразования отношения, имеющего некоторые недостатки, в отношение, которое этих недостатков не имеет. Что еще более важно, нормализацию можно использовать как критерий для определения желательности и правильности отношений.
Наиболее важные на практике нормальные формы отношений основываются на фундаментальном в теории реляционных баз данных понятии
функциональной зависимости.
Функциональная
зависимость
Функциональная зависимость (functional dependency) — это связь между атрибутами. Говоря более общим языком, атрибут Y функционально зависит от атрибута X, если значение X определяет значение Y.
Стоимость = Цена х Количество
Функциональные зависимости обозначаются следующим образом:
НомерСтудента > Специальность
СерийныйНомерКомпьютера > ОбъемПамяти
Атрибуты по правую сторону от стрелки называются детерминантами (determinants)
1-я нормальная форма
О любой таблице данных, удовлетворяющей определению отношения, говорят, что она находится в первой нормальной форме (first normal form, 1NF):
1.Ячейки таблицы должны содержать одиночные значения и в качестве значений не допускаются ни повторяющиеся группы, ни массивы.
2.Все записи в одном столбце (атрибуте) должны иметь один и тот же тип.
3.Каждый столбец должен иметь уникальное имя, но порядок следования столбцов в таблице несуществен.
4.В таблице не может быть двух одинаковых строк, и порядок следования строк несуществен.
