Слайд 1Функции и классификация систем управления базами данных.
СУБД ACCESS
Лекция
Слайд 2Внутримашинное информационное обеспечение
В аспекте обработки данных программами внутримашинное информационное обеспечение
может быть организовано в форме файлов, баз данных, хранилищ данных,
баз знаний.
Файл – это последовательное отображение однородных управленческих документов на машинном носителе в виде записей.
Структура файла соответствует структуре управленческого документа из внемашинного информационного обеспечения. Поэтому файлы группируются следующим образом:
входные оперативные – содержат переменную информацию;
условно – постоянные – содержат нормативно-справочную информацию;
результирующие – содержат результаты расчетов;
корректирующие – содержат данные для корректировки.
Информационные технологии первоначально основывались на файловой организации данных. Каждый программный продукт работал с одним или несколькими файлами данных, структура которых находились в прямой зависимости от приложений.
Слайд 3Внутримашинное информационное обеспечение
При этом существовал «примат» программного обеспечения: информационные возможности
системы полностью определялись возможностями программ; любые изменения в структуре данных
были возможны только при условии соответствующего изменения приложений; информация, содержащаяся в файлах данных, в большинстве случаев оказывалась недоступной для других программных средств.
В целом такую организацию программного и информационного обеспечения можно представить в виде схемы:
Приложение
Описание данных
Приложение
Описание данных
Файл данных
Файл данных
Файл данных
Файл данных
Приложение конвертор
Слайд 4Внутримашинное информационное обеспечение
Среди недостатков файловой организации можно выделить следующие:
Зависимость данных
от приложений. Файлы данных обычно жестко привязаны к программному обеспечению.
Использование их возможно только вместе с соответствующими приложениями.
Трудоемкость внесения изменений. Любые изменения в структуре информации требуют соответствующего изменения программного обеспечения, то есть, фактически, включают этап дополнительного программирования. Это ставит пользователя в зависимость от разработчиков программного обеспечения и в значительной мере увеличивает затраты на поддержание работоспособности автоматизированной информационной системы. Положение еще более усложняется, если одни и те же файлы используются несколькими приложениями - в этом случае потребуется переработка всех связанных программных средств.
Избыточность информации и дублирование данных. Очевидно, что разные программные средства могут использовать одну и ту же информацию, например, нормативно-справочные данные.
Слайд 5Внутримашинное информационное обеспечение
4. Разобщение данных. Файлы данных, используемые разными
приложениями, не связаны или только частично связаны между собой. Это
зачастую приводит к невозможности получить полную картину состояния предметной области, серьезным затруднениям при решении экономических задач, требующих работы с данными разных программ. Кроме того, это может вызывать временную или постоянную противоречивость данных, нарушение их целостности.
Неоперативность информации. Дублирование, переработка большого числа файлов, отсутствие целостности приводит к значительному снижению оперативности всей информационной системы.
Качественно новый этап информационных технологий связан с использованием в АИС баз данных (БД, DB) и систем управления базами данных. В наиболее общем виде базу данных определяют как совокупность взаимосвязанной информации. Уже в этом определении можно рассмотреть важную особенность БД - она включает не только сами данные, но и взаимосвязи между ними.
Слайд 6Внутримашинное информационное обеспечение
Одной из главных идей базы данных является совместное
хранение данных с их описаниями. Благодаря этому хранимые данные становятся
«открытыми», понятными для любого числа приложений, работающих с базой. Это делает базу данных самостоятельным информационным ресурсом, который может многократно использоваться различными приложениями, оставаясь при этом независимым от них.
Базы данных работают под управлением систем управления базами данных, которые определяют как совокупность языков и программ, необходимых для работы с базой данных. СУБД позволяют создавать базы данных, вносить и изменять информацию в них, осуществлять доступ к этой информации. Схема организации программного и информационного обеспечения в случае использовании СУБД принципиально иная:
Приложение
Приложение
Система управления базами данных
Описание данных
База данных
База данных
Описание данных
Слайд 7Внутримашинное информационное обеспечение
Данные в базах данных организуются в соответствии с
одной из моделей данных. Наибольшее распространение получила реляционная модель. Кроме
нее, существуют несколько моделей, называемых в целом дореляционными (например, иерархическая и сетевая модели), а также постреляционная модель.
В реляционной модели данные представляются в виде двумерных таблиц, связанных между собой определенными отношениями. Все операции над базой данных сводятся к манипуляциям с этими таблицами.
Ограничение на атомарность атрибутов означает, что в реляционной базе данных атрибут (поле) каждой записи может содержать только одно значение. В постреляционной модели, напротив, поле может содержать несколько значений, или даже целую таблицу. Таким образом, появляется возможность "вложить" одну таблицу в другую.
Это позволяет более эффективно оперировать бизнес-объектами, каждый из которых становится логически целостным, будучи представлен всего одной записью.
Как утверждают разработчики постреляционных СУБД, скорость выполнения запросов в них возрастает до двадцати раз по сравнению с реляционными СУБД.
Слайд 8Внутримашинное информационное обеспечение
Однако переход от реляционных баз данных, получивших повсеместное
распространение, к постреляционным, связан со значительными затратами и носит пока
ограниченный характер.
Дальнейшее развитие баз данных привело к появлению хранилищ данных – предметно ориентированного, неизменяемого и поддерживающего хронологию набора данных, предназначенного для оперативного, многомерного анализа данных для принятия решений.
Моделью данных в хранилище данных служит многомерный куб, т.е. многомерная база данных, в ячейках которой находятся анализируемые данные. По осям многомерного куба указываются измерители объекта с различных точек зрения. На основе хранилища данных работают OLAP-системы (аналитическая обработка данных в режиме реального времени).
В экспертных системах используются базы знаний, в которых представляются знания конкретных предметных областей. База знаний – это совокупность моделей, правил и фактов (данных), порождающих анализ и выводы для нахождения решений сложных задач в некоторой предметной области. Наиболее распространенными моделями в настоящее время являются: деревья выводов(правила, продукции), деревья целей и семантические сети.
Слайд 9Базы данных и системы управления базами данных
База данных (БД) –
поименованная совокупность сведений о конкретных объектах предметной области, организованных по
определенным правилам, предусматривающим общие принципы описания, хранения и манипулирования данными.
База данных – совокупность массивов данных сложной структуры.
Предметная область - часть реального мира, представляющая интерес для конкретного исследования.
Системы управления базами данных (СУБД) – пакет программ, обеспечивающих создание БД и организацию данных.
Слайд 10Базы данных. Основные понятия
База данных (БД) - совокупность сведений о
реальных объектах, процессах или явлениях, относящаяся к определенной теме или
задаче, организованная таким образом, чтобы обеспечить удобное представление этих сведений.
Требования к БД:
Модельность – БД должна моделировать некоторую часть объектов реального мира;
Актуальность – отражает текущее состояние объектов реального мира и динамически обновляется;
Непротиворечивость – данные в БД не должны противоречить друг другу и выбранной модели предметной области;
Целостность – БД должна по возможности наиболее полно моделировать объекты реального мира в рамках выбранной предметной области;
Надежность - данные защищены от потери либо искажения .
Слайд 11Система управления базами данных. Основные понятия
Система управления базами данных (СУБД)
– это совокупность языковых и программных средств, предназначенных для создания,
ведения и совместного использования БД несколькими пользователями.
Основные функции СУБД
Описание структуры данных;
Обработка данных:
Добавление
Удаление
Обновление
Поиск
Управление данными:
Защита от несанкционированного доступа.
Поддержка многопользовательского режима.
Обеспечение целостности и согласованности данных.
Слайд 12БАЗЫ ДАННЫХ
БД
Данные из внешней среды
Ввод данных
Хранение данных
Обработка данных
Группировка
Сортировка
Вычисление
Информация для использования
Вывод
информации
Слайд 13КЛАССИФИКАЦИЯ БД
По технологии обработки данных:
А) Централизованные; Б) Распределенные;
Централизованная база
данных хранится в памяти одной вычислительной машины
Распределенная база данных
состоит из нескольких частей, хранимых в различных ЭВМ вычислительной сети. Работа с такой базой осуществляется с помощью системы управления распределенной базой данных (СУРБД).
2. По способу доступа:
А) с локальным доступом; Б) с удаленным (сетевым) доступом ;
Системы централизованных баз данных с сетевым доступом могут быть реализованы с использованием следующих архитектур: файл-сервер и клиент-сервер
Слайд 14АРХИТЕКТУРА ФАЙЛ - СЕРВЕР
Файл – сервер
Раб. Станция №1
Раб. Станция №2
Раб.
Станция №3
П е р е д а ч а
ф а й л о в БД д л я о б р а б о т к и
Хранение данных
Обработка данных
Информация для использования
Слайд 15АРХИТЕКТУРА КЛИЕНТ - СЕРВЕР
Сервер базы данных
Раб. Станция №1
Раб. Станция №2
Раб.
Станция №3
Хранение данных
Обработка данных
Информация для использования
Слайд 16КЛАССИФИКАЦИЯ БД
3. По используемой модели данных:
А) иерархические;
Б) сетевые;
В) реляционные
Модель данных – совокупность элементов данных и связей
между ними
Слайд 17Иерархическая модель данных
Иерархическая структура представляет совокупность элементов, связанных между собой
по правилам иерархических отношений. Объекты, связанные иерархическими отношениями, образуют ориентированный
граф (перевернутое дерево).
С3
С2
Уровень 1
Уровень 2
Уровень 3
…
…
С1
..
..
С5
С4
С6
С7
С8
..
В1
В2
В3
А
К основным понятиям иерархической структуры относятся: уровень, элемент (узел), связь.
Слайд 18специальности
факультеты
ИЕРАРХИЧЕСКАЯ СТРУКТУРА ДАННЫХ
ВУЗ
Главная вершина (корень)
Уровень 1
Юридический
Экономический
Информационных технологий
Уровень 2
Этр
Фин
Мэк
Уровень 3
Эуп
курсы
1
2
Уровень 4
3
4
5
группы
1
2
Уровень
5
3
4
Андреев
Борисов
Григорьева
Слайд 19Сетевая структура (модель данных) имеет те же составляющие, что и
иерархическая (уровень, узел, связь), но каждый узел может быть связан
с любым другим узлом (представлена в виде диаграммы связей).
А
B
C
D
E
F
Слайд 20Пример сетевой структуры БД
Студент (номер зачетной книжки, фамилия, имя,
отчество)
Работа (шифр, руководитель)
Примером сложной сетевой структуры может служить структура базы
данных, содержащей сведения о студентах, участвующих в научно-исследовательских работах (НИР). Возможно участие одного студента в нескольких НИР, а также нескольких студентов в разработке одной НИР.
Слайд 21РЕЛЯЦИОННАЯ СТРУКТУРА ДАННЫХ
Отношение (relation)
Поля, домены
Запись, кортеж
Ключевое поле
Слайд 22Реляционная модель данных. Основные понятия
Модель данных – это правила, которые
определяют структуру данных и доступные операции над данными.
Реляционная база данных
– связанная информация, представленная в виде двумерных таблиц.
Сущность – это любой различимый, отличный от других, реальный или воображаемый, объект, информация о котором будет храниться в базе данных.
Атрибут – характеристика, определяющая свойства данного класса объектов и позволяющая однозначно идентифицировать объект и отличить его от других.
Домен – это диапазон значений, которые может принимать атрибут. Домен может быть задан перечислением возможных значений либо в абстрактном виде.
Слайд 23Реляционная модель данных. Основные понятия
Сущность
Таблица.
Атрибуты сущности
Заголовки столбцов (поля).
Значения атрибутов для различных экземпляров объектов
Строки таблицы (записи).
Клиенты
Слайд 24Свойства отношений
В таблице нет двух одинаковых строк;
Таблица имеет столбцы, соответствующие
атрибутам отношения;
Каждый атрибут в отношении имеет уникальное имя;
Порядок следования столбцов
(атрибутов) в отношении не имеет значения;
Значения атрибута для всех записей принадлежат одному и тому же домену;
Порядок строк в таблице произвольный;
Слайд 25Идентификация строк
Первичный ключ (PRIMARY KEY) - уникальный идентификатор записей таблицы.
Один или несколько столбцов, используемые для идентификации каждой строки и
обеспечивающие различимость строк.
Однозначно определяет значения остальных атрибутов отношения, не входящих в состав первичного ключа.
Одержит минимально необходимое для идентификации записи множество атрибутов .
В качестве первичного ключа рекомендуется выбирать поля типа «длинное целое» .
Если первичный ключ подобрать сложно, рекомендуется создавать искусственный идентификатор в виде поля «длинное целое» и заполнять его уникальными значениями, кодирующими записи исходной таблицы.
Слайд 26Связывание таблиц
Внешний ключ (FOREIGN KEY ) –
поле таблицы, предназначенное для хранения значения первичного ключа другой таблицы
с целью организации связи между этими таблицами.
Значения атрибутов, входящих в исходную и связанную таблицы, должны совпадать для связанных записей.
Наименования связанных полей совпадать не обязаны.
Сделки
Клиенты
FOREIGN KEY
PRIMARY KEY
Слайд 27Типы связей
Один - к – одному (1:1)
Один - ко –
многим (1:n)
Многие - ко – многим (n:n)
Слайд 28Примеры связей между информационными объектами
Слайд 29Определение таблиц, включаемых в БД;
Определение полей всех таблиц;
Определение полей с
уникальными значениями (ключевых полей);
Определение связей между таблицами.
Разработка инфологической модели
ОСНОВНЫЕ
ЭТАПЫ РАБОТЫ С БД
создание структуры таблиц базы данных;
ввод и редактирование данных в таблицах
Создание базы данных
обработка данных, содержащихся в таблицах;
вывод информации из базы данных.
Эксплуатация БД
Слайд 30Проектирование реляционных баз данных
1. Разработка структуры базы данных, т. е.основных
таблиц и установление связей между таблицами и обеспечение целостности данных
2.
В теории реляционных баз разработан метод нормализации отношений, который помогает разработчику оптимальным образом спроектировать структуру отношений базы данных.
Нормализация отношений - пошаговый процесс разложения (декомпозиции) исходных отношений БД на более простые. Каждая ступень этого процесса приводит схему отношений БД в последовательные "нормальные формы". Каждая следующая нормальная форма обладает «лучшими» свойствами, чем предыдущая.
В теории реляционных баз данных принято выделять следующую последовательность нормальных форм: первая (1NF); вторая (2NF); третья (3NF); нормальная форма Бойса-Кодда (BCNF);четвертая (4NF); пятая (5NF), шестая (6NF), но обычно останавливаются на третьей иногда на второй форме.
Отношение находится в первой нормальной форме (1NF), если значения атрибутов атомарны, то есть в каждом столбце находится только одно значение. Например, номер телефона может быть: рабочим, домашним, мобильным. А это предполагает разбиение таблицы на главную и подчиненную (с номерами телефонов) и установление связи
«один ко многим»
Слайд 31Проектирование реляционных баз данных
Отношение находится во второй нормальной форме (2NF),
если выполняются ограничения первой нормальной (1NF) формы и каждый неключевой
атрибут функционально полно зависит от первичного ключа (первичный ключ может быть составным).
Отношение находится в третьей нормальной форме (3NF), если выполняются ограничения второй нормальной формы (2NF) и если все неключевые атрибуты отношения взаимно независимы и полностью зависят от первичного ключа.
Нормализация – процесс удаления избыточных данных из таблицы путем декомпозиции отношений, т.е. разбиения исходного отношения на множество более простых отношений.
Результаты нормализации:
Устранение (сокращение) дублирования данных.
Поддержка непротиворечивости информации.
Уменьшение пустых значений.
Уменьшение объема таблиц БД.
Повышение скорости выполнения различных операций с данными.
Слайд 32Нормализация БД. Пример
Авторы книг
Авторы
Книги
Слайд 33Проектирование реляционных баз данных
Индексирование используется для повышения скорости получения информации
и модификации данных.
Индекс - вспомогательная структура позволяющая сократить число операций
чтения – ввода- вывода при поиске данных.
СУБД автоматически строит индексы по заданным ключам таблицы.
Индексы хранят отсортированные значения индексных полей и указатель на запись в таблице.
Записи одного файла могут иметь несколько индексов для организации работы с данными.
Слайд 35Правила индексирования
Индекс по первичному ключу позволяет быстро найти нужную запись.
Поля, по которым часто приходится осуществлять поиск, должны быть проиндексированы
Индексов
не должно быть слишком много.
Индексы для внешних ключей не нужны.
Слайд 36Пример проектирования реляционной базы данных
Пусть небольшой фирме, продающей комплектующие для
компьютеров, требуется сохранять данные о заказах. Эти данные включают:
1)
дату заказа;
2) номер заказа;
3) артикул (уникальный номер единицы товара);
4) наименование товара;
5) цену заказанного товара.
Слайд 37ПЕРВАЯ НОРМАЛЬНАЯ ФОРМА ОТНОШЕНИЯ «ЗАКАЗЫ»
Отношение находится в 1NF, так как
все ее атрибуты атомарны.
Слайд 38ВТОРАЯ НОРМАЛЬНАЯ ФОРМА ОТНОШЕНИЯ «ЗАКАЗЫ»
Для того чтобы выполнить требования второй
нормальной формы, надо добавить к таблице атрибут, который однозначно бы
идентифицировал каждую единицу товара, входящую в заказ. Это атрибут – Учетный №.
В этой таблице все атрибуты зависят от атрибута Учетный №, но есть зависимость Наименования и Цены от Артикула. Требование (3NF) независимости атрибутов отношения не выполняются.
Слайд 39ТРЕТЬЯ НОРМАЛЬНАЯ ФОРМА ОТНОШЕНИЯ «ЗАКАЗЫ»
ПРОДАЖИ
КОМПЛЕКТУЮЩИЕ
ЦЕНЫ
Для приведения отношения в третью нормальную
форму предыдущую таблицу требуется разбить на три отношения: ПРОДАЖИ, КОМПЛЕКТУЮЩИЕ,
ЦЕНЫ.
Слайд 40Характеристика СУБД MS ACCESS
MS Access – одна
из наиболее популярных настольных СУБД. В ней предусмотрены все необходимые
средства для проектирования и модификации структуры БД, манипулирования с данными БД.
Объекты Access:
Таблицы – обязательный, базовый элемент, содержащий данные.
Запросы – это объект, позволяющий пользователю получить нужные данные из одной или нескольких таблиц.
Формы – объект, предназначенный для ввода данных, отображения их на экране, и управления работой приложения.
Отчеты – это красиво оформленный запрос, предназначенный для наглядного представления данных, может быть распечатан или включен в документ другого приложения.
Макросы - наборы инструкций по управлению данными, которые могут быть выполнены в ответ на определенное событие (нажатие кнопки в форме).
Модули – это объекты, содержащие программы на языке Visial Basic for Applications. Предназначены для реализации нестандартных процедур при создании приложений.
Слайд 41Этапы создания основных объектов ACCESS
Главное окно БД
Слайд 42Создание таблицы
Способы создания таблицы:
В режиме конструктора,
С помощью мастера,
Режим таблицы (Путем
ввода данных),
Путем импорта данных из внешнего файла или из другой
БД,
Путем присоединения внешнего файла другой БД.
Слайд 43Создание таблицы в режиме конструктора
Слайд 45Создание таблицы с помощью мастера
Слайд 46Создание таблицы путем ввода данных
Слайд 47Пример. Создание базы данных поставок топлива
АЗС
Поставщики
Топливо
Сделки
Слайд 48Связи между таблицами
Выполнить команду Сервис/Схема данных.
Выбрать таблицы.
Добавить связи.
Слайд 50Целостность данных
Целостность данных – система правил, использующаяся для
поддержания связей между записями в связанных таблицах. Обеспечивает защиту от
случайного удаления или изменения связанных данных.
Условия установления целостности:
Связанное поле главной таблицы является ключевым полем или имеет уникальный индекс.
Связанные поля имеют один тип данных.
Поле типа «Счетчик» может быть связано с полем типа «Длинное целое».
Связанные таблицы принадлежат одной БД Access.
Слайд 51Контроль за соблюдением целостности
Обеспечивается автоматически MS Access:
Невозможно ввести в поле
внешнего ключа связанной таблицы значение, не содержащееся в ключевом поле
главной таблицы.
Допускается ввод пустых значений в поле внешнего ключа.
Нельзя удалить запись из главной таблицы, если существуют связанные с ней записи в подчиненной таблице.
Нельзя изменить значение ключевого поля в главной таблице, если существуют записи, связанные с данным значением.