Сдам Сам

ПОЛЕЗНОЕ


КАТЕГОРИИ







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





Хранение информации – одна из важнейших функций компьютера. Одним из распространенных средств такого хранения являются базы данных.

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

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

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

Основные функции СУБД:

· управление данными во внешней памяти;

· управление буферами оперативной памяти;

· управление транзакциями;

· журнализация и восстановление БД после сбоев;

· поддержание языков БД.

Логически в современной реляционной СУБД можно выделить

· ядро СУБД (т.н. Data Base Engine); его основными логическими компонентами являются: менеджер данных, менеджер буферов, менеджер транзакций и менеджер журнала;

· компилятор языка БД (обычно SQL);

· подсистему поддержки времени выполнения;

· набор утилит.

DDL (Язык Определения Данных) – Язык Описания Схемы, состоит из команд, которые создают объекты (таблицы, индексы, и так далее) в базе данных.

DML (Язык Манипулирования Данными) – это набор команд, которые определяют, какие значения представлены в таблицах в любой момент времени.

DCD (Язык Управления Данными) состоит из средств, которые определяют, разрешить ли пользователю выполнять определенные действия или нет.

DCL(Язык Разделения прав доступа)

DQL (Язык Извлечения данных из таблицы)

CCL (Язык Управления курсором)

TRL(Язык Управления транзакциями)

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

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

 
 

 


Каждый экземпляр сущности (объект) должен быть отличим от любого другого экземпляра той же сущности. Пример экземпляров сущности ФАКУЛЬТЕТ: ПС, ФМ, АТ и т.п., сущности СТУДЕНТ: Иванов А.П., Петрова Н.Н. и т.п.

Связь (relationship) – это графически изображаемая ассоциация, устанавливаемая между двумя сущностями. Связь может существовать между двумя разными сущностями или между сущностью и ей же самой (рекурсивная связь). Возможны связи на основе отношений один-к-одному, один-ко-многим, многие-ко-многим.

Связь «содержит»: ГРУППА содержит много СТУДЕНТОВ. Каждый СТУДЕНТ входит только в одну ГРУППУ.

 

 

Связь «укушен»: СОБАКА может укусить много ЧЕЛОВЕК, ЧЕЛОВЕК может быть укушен многими СОБАКАМИ.

Связь «владеет»: ЧЕЛОВЕК может владеть многими СОБАКАМИ. У СОБАКИ может быть только один хозяин.

Сущности имеют свойства, которые называются атрибутами (attribute).

Например, атрибуты

сущности ФАКУЛЬТЕТ: название, год создания;

сущности ГРУППА: номер;

сущности СТУДЕНТ: фамилия, имя, отчество, номер студенческого билета, номер паспорта, год рождения, месяц рождения, день рождения.

Любой атрибут принимает значения из некоторого множества допустимых значений, называемого доменом атрибута.

Например,

домен атрибута «год создания»: целые положительные числа;

домен атрибута «имя»: строка, не содержащая пробелов;

домен атрибута «год рождения»: целые положительные числа.

домен атрибута «месяц рождения»: январь, февраль, март … декабрь.

домен атрибута «день рождения»: целые числа от 1 до 31.

Ключ сущности ( entity key), первичный ключ это атрибут (или множество атрибутов) уникальным образом идентифицирующих экземпляр сущности (объект). Например, ключ сущности СТУДЕНТ – номер студенческого билета, ключ ФАКУЛЬТЕТА – название.

Если ключ состоит из одного атрибута, его называют простым ключом.

Если ключ сущности состоит из нескольких атрибутов, его называют составным ключом. Например, для сущности ДОМ с атрибутами «улица», «этажность», «год постройки», «номер дома», первичным ключом будет «улица»+ «номер дома»

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

Отношение – это плоская таблица, содержащая N столбцов, среди которых нет одинаковых. N – это степень отношения, или арность отношения.

Столбец отношения соответствует атрибуту сущности.

Кортеж – строка отношения (соответствует записи в таблице).

Отношение ФАКУЛЬТЕТ

Краткое название Полное название Год создания
ПС Приборостроительный  
AT Автотракторный  
МТ Механико-Технологический  
ЭиУ Экономики и Управления  
   

Атрибуты: Краткое название (домен: строки длиной до 4-х символов), Полное название (домен: строки длиной до 32-х символов), Год создания (домен: целое положительное число).

Кортежи: (ПС, Приборостроительный, 1957), (AT, Автотракторный, 1943) и т.д.

Ключи: Краткое название, Полное название

Схема отношения – список атрибутов одного отношения.

База данных, с логической точки зрения представляет собой совокупность взаимосвязанных отношений. При проектировании БД должна обеспечиваться целостность данных, т.е. достоверность и непротиворечивость хранимых данных, причем эти свойства не должны утрачиваться в процессе работы с данными (после многочисленных изменений, удалений и дополнений данных).

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

Выделяют 5 нормальных форм и форму Бойса-Кодда. Далее рассматриваются первые 3 нормальный формы.

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

Пример ненормализованного отношения: ПОСТАВЩИК и ИЗДЕЛИE

Поставщик Название изделия Цена изделия
ТД Электроизделия, т 266-06-68, Ул. Российския, 63, 744800598603 Лампа 36w  
ТД Электроизделия, т 266-06-68, Ул. Российския, 63, 744800598603 Лампа 52w  
ТД ЭтектроВент, т 268-06-68, Ул Работниц, 75, 744800598504 Светильник BAT 36w  
ТД ЭтектроВент, т 268-06-68, Ул Работниц, 75, 744800598504 Лампа 52w  

Первичный ключ: «Поставщик»+ «Название изделия». Атрибут «Поставщик» не является атомарным.

Отношение в 1NF:

ИНН поставщика Название поставщика Адрес поставщика Телефон Название изделия Цена изделия
  ТД Электроизделия Ул. Российския, 63 266-06-68 Лампа 36w  
  ТД Электроизделия Ул. Российския, 63 266-06-68 Лампа 52w  
  ТД ЭтектроВент Ул. Работниц, 85 268-06-68 Светильник BAT 36w  
  ТД ЭтектроВент Ул. Работниц, 85 268-06-68 Лампа 52w  

Отношение имеет составной первичный ключ PK: «ИНН поставщика» + «Название изделия»

Любое отношение в 1NF должно иметь ключ, который является:

· уникальным (нет другого кортежа с данным ключом);

· неизбыточным (ни один атрибут не может быть удален из ключа без нарушения уникальности);

Такой ключ в отношении может быть не единственным. Все такие ключи называют возможными ключами. Из них назначается один первичный ключ (Primary Key – PK).

Возможные ключи в отношении ПОСТАВЩИК и ИЗДЕЛИE: «ИНН поставщика» + «Название изделия», «Название поставщика» + «Название изделия»

Атрибут A функционально определяет атрибут В если любому значению атрибута A может соответствовать единственное значение атрибута В. Например, ИНН поставщика функционально определяет название поставщика.

Атрибут A называется полностью зависимым от некоторого множества атрибутов R, если функционально зависит от R и не зависит от любого его подмножества.

Отношение находится во второй нормальной форме (2NF), если оно находится в 1NF и любой атрибут, не являющийся первичным ключом, полностью зависит от любого возможного ключа отношения.

В отношении ПОСТАВЩИКИ и ИЗДЕЛИЯ атрибуты «Название поставщика», «Адрес поставщика» и «Телефон» не является первичными ключами и зависят только от атрибута «ИНН поставщика», т.е. только от части возможного ключа.

Отношение может быть приведено к 2NF путем расщепления его на два:

1. Отношение ПОСТАВЩИК

2. PK: «ИНН поставщика»

ИНН поставщика Название поставщика Адрес поставщика Телефон
  ТД Электроизделия Ул. Российския, 63 266-06-68
  ТД ЭтектроВент Ул. Работниц, 85 268-06-68

 

Отношение ИЗДЕЛИЕ

PK: «ИНН поставщика» + «Название изделия»

ИНН поставщика Название изделия Цена изделия
  Лампа 36w  
  Лампа 52w  
  Светильник BAT 36w  
  Лампа 52w  

 

Отношение находится в третьей нормальной форме (3NF) если оно находится в 1NF и все неключевые атрибуты отношения взаимно независимы и полностью зависят от первичного ключа.

Если отношение находится в 3NF, то оно находится и в 2NF.

В отношении ПЕРСОНАЛ имеется функциональная зависимость между неключевыми атрибутами «ФИО», «Должность» и «Телефон».

PK: «ИНН поставщика»+ «Должность»+ «ФИО»

 

ИНН поставщика Название поставщика Адрес поставщика Должность ФИО Телефон
  ТД Электроизделия Ул. Российския,63 директор Иванов И.И. 266-06-68
  ТД Электроизделия Ул. Российския,63 Зам. директора Сидоров И.И. 266-11-22
  ТД ЭтектроВент Ул. Работниц, 85 директор Липов А.А. 268-16-68
  ТД ЭтектроВент Ул. Работниц, 85 бухгалтер Петрова И.И. 268-22-68
  ТД ЭтектроВент Ул. Работниц, 85 менеджер Смирнов И.Р. 268-06-65
  ТД ЭтектроВент Ул. Работниц, 85 менеджер Киров И.Н. 268-06-65

После декомпозиции получаем 2 отношения в 3NF

Отношение ПОСТАВЩИК

PK: «ИНН поставщика»

Название и адрес зависят только от ИНН и не зависят друг от друга

ИНН поставщика Название поставщика Адрес поставщика
  ТД Электроизделия Ул. Российския, 63
  ТД ЭтектроВент Ул. Работниц, 85

Отношение СОТРУДНИК

PK: «ИНН поставщика»+ «Должность»+ «ФИО»

Телефон зависит от PK

ИНН поставщика Должность ФИО Телефон
  директор Иванов И.И. 266-06-68
  Зам. директора Сидоров И.И. 266-11-22
  директор Липов А.А. 268-16-68
  бухгалтер Петрова И.И. 268-22-68
  менеджер Смирнова И.Р. 268-06-65
  менеджер Киров И.Н. 268-06-65
  ст. менеджер Петров И.Н. 268-06-67






Живите по правилу: МАЛО ЛИ ЧТО НА СВЕТЕ СУЩЕСТВУЕТ? Я неслучайно подчеркиваю, что место в голове ограничено, а информации вокруг много, и что ваше право...

Что способствует осуществлению желаний? Стопроцентная, непоколебимая уверенность в своем...

Что будет с Землей, если ось ее сместится на 6666 км? Что будет с Землей? - задался я вопросом...

ЧТО ТАКОЕ УВЕРЕННОЕ ПОВЕДЕНИЕ В МЕЖЛИЧНОСТНЫХ ОТНОШЕНИЯХ? Исторически существует три основных модели различий, существующих между...





Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:


©2015- 2024 zdamsam.ru Размещенные материалы защищены законодательством РФ.