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

advertisement
Информационные
системы в экономике
Базы данных.
СУБД
Внутримашинное
информационное обеспечение



Внутримашинное информационное
обеспечение – различные виды специально
организованной экономической информации,
представленной в виде, удобном для хранения
и обработке компьютерными средствами.
В состав внутримашинного информационного
обеспечения включают файлы, базы и банки
данных, базы знаний и т.п.
Требования, предъявляемые к данному виду
информационного обеспечения, — быстрота и
надежность при выполнении операций по
поиску, обработке и представлению данных
для пользователя.
Информационная база



Основной частью внутримашинного
обеспечения является
информационная база — специальным
образом организованная совокупность
данных, хранимая в памяти ЭВМ в виде
файлов.
Файл — совокупность однородных по
структуре записей, предназначенное
для решения экономической задачи.
Запись — набор полей заданного
формата.
Типы файлов

Файлы экономических информационных систем
могут быть классифицированы по различным
признакам:
• по этапам обработки — входные, базовые,
результативные;
• по типу носителя — на основных носителях, на
сменных носителях и др.;
• по составу информации — файлы с оперативной
информацией, с постоянной информацией;
• по типу логической организации — файлы с линейной
и иерархической структурой, реляционные,
табличные;
• по способу физической организации — файлы с
последовательным, индексным и прямым доступом.
Организация доступа к данным

Для организации доступа к данным
существуют следующие способы
организации информационных баз:
• Совокупность локальных файлов,
поддерживаемых функциональными
пакетами прикладных программ;
• Интегрированная база данных, основанная
на использовании универсальных
программных средств загрузки, поиска и
обработки данных, - системы управления
базами данных (СУБД).
Базы и банки данных


Банк данных — система специальным
образом организованной информации
— баз данных, а также программных,
технических, языковых,
организационно-методических средств,
предназначенных для обеспечения
централизованного накопления и
коллективного использования данных.
Использование баз и банков данных —
это ведущее направление организации
внутримашинного информационного
обеспечения.
Преимущество использования
БД

В отличие от локально организованных
массивов информации банки данных являются
интегрированной информационной системой,
решающей следующие задачи:
• сокращение избыточности в хранения информации;
• устранение противоречивости в данных;
• совместное использование информации в решении
большого круга задач;
• удобства организации доступа к данным;
• обеспечение безопасности хранения данных;
• снижение затрат на хранение данных и поддержание
в актуальном состоянии;
• обеспечение независимости данных от изменяющихся
внешних условий.
Структура банка данных

Банк данных представляет собой
сложную человеко-машинную систему,
включающую в свой состав различные
взаимосвязанные компоненты:
•
•
•
•
•
•
•
База данных – информационная компонента;
Программные средства;
Языковые средства;
Система управления базами данных – СУБД;
Технические средства;
Организационно-методические средства;
Администратор БД.
Базы данных




База данных (БД) — именованная совокупность
данных, отражающая состояние объектов и их
отношений в рассматриваемой предметной
области.
В общем случае данные в базе данных
являются интегрированными и общими.
Под понятием интегрированные данные
подразумевается возможность представить БД
как совокупность нескольких отдельных
файлов данных, полностью или частично не
перекрывающихся.
Под понятием общие данные подразумевается
возможность использования отдельных
информационных областей в базе данных
несколькими различными пользователями.
Метаинформация

В состав базы данных входит
метаинформация (т.е. информация
об информации), включающая:
• описание базы данных (схема БД),
• информацию о предметной области,
необходимую для проектирования
системы,
• пользователях БнД,
• о проектных решениях и др.
Программные средства



Программные средства БнД
представляют собой комплекс программ
и программных модулей,
обеспечивающий взаимодействие всех
частей информационной системы при ее
функционировании.
Приложения базы данных — программы
и программные модули, с помощью
которых пользователь выполняет
операции с БД.
Основу программных средств БнД
представляет СУБД.
Системы управления базами
данных




Система управления базами данных (СУБД) —
совокупность языковых и программных средств,
предназначенных для создания, ведения и совместного
использования БД многими пользователями.
Основная функция, выполняемая СУБД —
предоставление пользователю базы данных возможности
работать с ней, не вникая в детали на уровне
аппаратного обеспечения.
В СУБД можно выделить ядро СУБД, обеспечивающее
организацию ввода, обработки и хранения данных, а
также средства тестирования и утилиты,
обеспечивающие выполнение вспомогательных
функций.
Важной компонентой СУБД являются трансляторы или
компиляторы для используемых ею языковых средств.
Языковые средства


Языковые средства должны обеспечить
интерфейс пользователей и прикладных
приложений разных категорий с банком
данных.
Примером языкового средства, широко
применяемого при манипулировании
информацией в базах данных, являются
различные модификации языка
структурированных запросов (SQL).
Технические и организационнометодические средства


В качестве технических средств БнД
используются универсальные ЭВМ,
периферийные устройства для вывода
информации в базу данных и
отображения выводимой информации.
Организационно-методические средства
представляют собой различные
инструкции, методические и
регламентирующие материалы,
предназначенные для пользователей
разных категорий, взаимодействующих
с банком данных.
Пользователи БД




Администратор БнД — лицо, определяющее правила
манипулирования данными в БД, устанавливает доступ
различных пользователей к различным участках
информационной базы.
В задачи администратора входит определение общих
правил работы с информацией в базе данных,
выполнение установочных и регламентных работ по
обеспечению сохранности информации.
Пользователь БнД — лицо, выполняющее операции по
вводу информации в БД, запуск различных модулей
обработки данных, вывода информации в электронном
виде или на бумажных носителях.
Права пользователей устанавливаются администратором
системы и определяются организационной схемой
управления предприятием.
Локальные и распределенные БД




Банки и базы данных могут быть расположены на одном
компьютере (локальные базы данных) или на
нескольких, соединенных между собой вычислительной
сетью, компьютерах (распределенные базы данных).
Локальные базы эффективны при работе одного или
нескольких пользователей. В этом случае разграничение
полномочий осуществляется административным путем.
Распределенные базы данных позволяют организовать
доступ к информации множества удаленных
пользователей, и требует развитых форм
администрирования доступа к данным.
Такими требованиями являются:
• централизованное управление распределенными данными,
• поддержка целостности, актуальности и
непротиворечивости данных,
• обеспечение защиты информации,
• повышение эффективности доступа к данным.
Базы данных на больших ЭВМ


Базы данных хранится на центральных ЭВМ,
пользователями являются программные приложения,
запускаемые в пакетном режиме. Интерактивный режим
с конечным пользователем обеспечивается с помощью
консольных терминалов, которые не используют
собственными вычислительными ресурсами.
Отличительные особенности:
• все СУБД базируются на мощных операционных системах,
поддерживающих работу с центральной БД в режиме
распределенного доступа.
• функции управления распределения ресурсов
осуществляются ОС;
• поддержка языков низкого уровня манипулирования
данными;
• значительная роль в организации работы с БД отводится
администрированию данных.
Настольные БД

Настольные базы данных. Приложения,
ориентированные на применение персональных
компьютеров. Особенностями таким систем являются:
• системы управления базами данных ориентированны на
создание БД с монопольным доступом;
• системы управления базами данных имеют развитый и
удобный пользовательский интерфейс. При этом
интерактивный режим работы используется, как при
описании БД, так и проектировании запросов. Имеется
развитый инструментарий для разработки приложений без
программирования, с помощью использования готовых
элементов приложений в виде форм, отчетов и т.п.
• поддержка низкоуровневых языков манипулирования
данными на уровне отдельных строк таблиц;
• практическое отсутствие элементов администрирования БД;
• сравнительно скромные требования к аппаратному
обеспечению.
Распределенные БД

Распределенные базы данных. Основное назначение —
интеграция данных на различных ЭВМ. Основный
принцип работы приложений БД — обработка
транзакций (последовательность операций над БД,
переводящих ее из одного непротиворечивого состояния
в другое). Отличительные особенности таких систем:
• поддержка реляционной модели (обеспечение структурной
целостности данных, языковая целостность или
манипулирование с помощью языка высокого уровня,
ссылочная целостность);
• многоплатформенность архитектур, т.е. способность
работать на различных типах ЭВМ под управлением
различных ОС;
• поддержка многопользовательской работы и возможности
децентрализованного хранения данных потребовали
развития средств администрирования БД и общей
концепции средств защиты данных.
Экспертные системы



Экспертная система — специальная
компьютерная система, основанная на сборе,
анализе, обобщении и оценке знаний
квалифицированных специалистов. В
экспертных системах используются базы
знаний.
База знаний — это совокупность моделей,
правил и данных, порождающих анализ и
выводы для определения решения задачи в
некоторой предметной области.
Содержание базы знаний используется для
определения наиболее эффективного
управленческого решения.
Информационно-логические
модели




Организация хранения информации в базе данных
требует использования определенной абстрактной
модели.
Основное назначение логической модели данных —
систематизация различной информации и отражение ее
свойств по содержанию, структуре связям с учетом
требования удовлетворения потребностей различных
пользователей.
Эффективность логической модели зависит от степени
отражения моделируемой предметной области.
При построении логических моделей данных выбирается
один из подходов:
• иерархический,
• сетевой,
• реляционный.
Иерархическая модель данных







Наиболее простая даталогическая модель (модель хранения
данных).
Основные информационные единицы: база данных, сегмент
и поле.
Поле данных — минимальная, неделимая единица данных,
доступная пользователю.
Сегмент (запись) определяется типом записи и экземпляром
записи.
Тип записи — поименованная совокупность типов элементов
в него входящих.
Экземпляр записи образуется из конкретных значений
полей.
Каждый тип сегмента образует набор однородный записей.
Иерархическая модель имеет структуру в виде дерева и
выражает вертикальные связи подчинения нижестоящего
уровня вышестоящему. Это облегчает организацию доступа к
данным, в том случае если все запросы имеют древовидную
структуру.
Сетевая модель данных






Базовые понятия: элемент данных, агрегат данных,
запись, набор данных.
Элемент данных — аналогичен понятию поле в
иерархической модели.
Агрегат данных соответствует следующему уровню
обобщения: агрегат типа вектор и агрегат типа
повторяющаяся группа.
Записью называют совокупность агрегатов,
моделирующих некоторый класс объектов реального
мира.
Набором называется граф, связывающий отношением
“один-ко-многим” два типа записей.
Сетевая модель отличается от иерархической наличием
горизонтальных связей, что усложняет модель.
Реляционная модель данных







Реляционная модель представляется в виде совокупности отношений
(таблиц) над которыми выполняются операции реляционной алгебры
(объединения, пересечения, проектирование и т.д.).
Связи между двумя связанными таблицами устанавливаются по
равенству одинаковых атрибутов таблиц.
Таблица (отношение) — основной тип структуры данных в
реляционной модели. Структура таблицы определяется совокупностью
столбцов (доменов).
В каждой строке (кортеже) содержится единственное значение в
соответствующем столбце.
Отношение имеет простую графическую интерпретацию — таблица,
строки которой соответствуют вхождению доменов в отношении, а
строки наборам из n значений, взятых из исходных доменов.
Столбец соответствует некоторому реквизиту, хранящемуся в БД.
Каждый столбец должен иметь определенное имя соответствующего
элемента данных.
Один или несколько атрибутов, однозначно идентифицирующих строку
называется ключом таблицы.
Сравнение моделей




Сетевые модели данных по сравнению с иерархическими
представляют собой более универсальное средство
отображение во внутримашинной сфере структуру
информационных связей различных предметных областей.
Достоинством сетевых моделей является отсутствие
дублирования данных в разных элементах модели. В
иерархических моделях доступ к информации по ключу
возможен, как правило, только к объекту самого высокого
уровня, который не подчинен другим объектам.
Достоинство иерархических моделей, четкая структура связей
между объектами, что облегчает организацию защиты данных.
Достоинством реляционной модели является сравнительная
простата и инструментальных средств ее поддержки, развитые
теоретические основы использования модели. Недостаток
реляционной модели — жесткость структуры данных,
сложности при необходимости добавления новых данных в
существующую БД.
СУБД MS Access



Система управления базами данных Microsoft
Access является одной из популярных
настольных реляционных баз данных.
Современные версии СУБД Access являются 32разрядными приложениями, поддерживающие
работу с реляционными базами данных и
распространяются как отдельные приложения,
так и входящие в состав Microsoft Office.
Данная СУБД позволяет создавать базы данных
различного объема, с которыми работают в
монопольном режиме или режиме
коллективного доступа.
Объекты СУБД Access

В базах данных (БД) Microsoft Access применяется подход совместного
хранения данных, процедур обработки информации и средств
организации пользовательского интерфейса в едином файле. Файлы с
расширением .mdb включают в себя следующие объекты и элементы
управления:
•
•
•
•
•
•
•
таблицы используются для хранения данных относящихся к предметной
области, создаваемые таблицы соответствуют определенному отношению
построенной логической модели;
формы — средство, предназначенное для ввода, просмотра и
редактирования БД в интерактивном режиме;
запросы разрабатываются для выборки и обработки необходимой
информации из отдельной таблицы, или связанных между собой таблиц;
отчеты предназначены для вывода результатов обработки информации в
электронном или печатном виде;
страницы обеспечивают доступ к базам данных и представление хранимой
информации или результатов обработки с помощью программ-обозревателей
Internet;
макросы — средство автоматизации последовательности выполнения
операций.;
модули включают в себя приложения, написанные на языке
программирования Visual Basic, разработанные пользователем для
нестандартных процедур при разработке приложений.
Общий вид окна Access
Проектирование баз данных

Процесс типового проектирования баз
данных включает в себя:
• построение информационно-логической
модели предметной области;
• выбор СУБД;
• проектирование логической структуры БД;
• проектирование организации БД на
машинных носителях;
• разработку процедур для
администрирования БД;
• разработку программных модулей и
процедур для работы с БД приложений.
Разработка информационнологической модели




Основой для проектирования логической структуры БД
является информационно-логическая модель (ИЛМ),
представляющая собой формализованное описание
данных предметной области.
В ИЛМ рассматриваются совокупности информационных
объектов, содержащих наборы реквизитов, и
структурных связей данных объектов.
Структура информационных объектов должна отвечать
определенным формальным требованиям (требованиям
нормальной формы).
Каждый такой объект образует множество экземпляров,
в отдельном экземпляре хранятся значения реквизитов.
Для обеспечения однозначной идентификации
отдельных экземпляров используются ключи
информационного объекта. Ключ может включать
единственный реквизит (ординарный ключ) или группу
связанных между собой реквизитов (составной ключ).
Связи между отношениями БД


В реляционных базах данных в качестве информационных объектов
выступают отношения (таблицы).
Функциональные связи отражают последовательности переходов от
одних информационных объектов к другим. Экземпляры исходных
объектов известны до начала процесса обработки, экземпляры
искомых информационных объектов устанавливаются в ходе поиска
или в процессе обработки экземпляров исходных объектов.
Количественная характеристика связи экземпляров двух
информационных объектов бывает следующих типов:
•
•
•
•
одно - однозначное отношение (связь типа 1:1 — один-к-одному). Каждый
экземпляр первого объекта в каждый момент времени связан с
единственным экземпляром второго;
одно - многозначное отношение (связь типа 1:M — один-ко-многим). Каждый
экземпляр первого объекта в каждый момент времени связан с
произвольным числом экземпляров второго;
много - однозначное отношение (связь типа M:1 — многие-к-одному).
Отношение зеркально противоположное предыдущему;
много - многозначное отношение (связь типа M:N — многие-ко-многим).
Каждый экземпляр первого объекта в каждый момент времени связан с
произвольным числом экземпляров второго и наоборот;
Конструктор таблиц


В реляционной базе данных структурной единицей для хранения информации
является таблица.
Таблица состоит из множества записей, информация в которых разбита на
отдельные поля. Такая структура иногда называется плоским файлом.
Схема данных

Определив с помощью Конструктора структуры таблиц создается
схема данных. Данная схема позволяет упростить разработку
многотабличных запросов, форм и отчетов и определить структурные
связи между информационными объектами базы данных.
Запросы


Обработка информации в СУБД Access выполняется с
помощью запросов или специально написанных модулей.
Запросы представляют собой мощное средство для
выборки данных из одной или нескольких таблиц по
заданному условию, а также выполнения расчетов,
изменения информации в таблицах, изменение
структуры хранения данных.
В Access используются два лингвистических средства
создания запросов:
• QBE (Query By Example) — запрос по примеру, строится с
помощью реляционного языка запросов. Формирование
запроса выполняется графически в специальном окне.
• SQL (Structured Query Language) — универсальный
реляционно-полный язык формирования запросов.
Формирование запроса основано на использовании
специальных инструкций в соответствии с правилами
языка. Язык SQL поддерживается многими системами
управления реляционными базами данных.
Конструктор запросов
Использование SQL

в СУБД Access выполняется автоматическое
преобразование QBE запросов в запросы на
языке SQL. Инструкция, соответствующая
запросу-выборке, может быть просмотрена с
помощью команды Вид – Режим SQL. Вид
инструкции в рассматриваемом примере будет
следующий:
• SELECT Перевозки.[№ заказа],
Заказчики.Наименование, Перевозки.[Дата заказа],
Перевозки.Километраж, Перевозки.[Отметка о
выполнении] FROM Заказчики INNER JOIN Перевозки
ON Заказчики.[№ заказчика] = Перевозки.[№
заказчика] WHERE (((Перевозки.[Отметка о
выполнении])=Yes));
Инструкции SQL

Инструкция SELECT
• По этой инструкции ядро базы данных Microsoft Jet возвращает
данные из базы данных в виде набора записей.
• Синтаксис
• SELECT [предикат] { * | таблица.* | [таблица.]поле_1
• [AS псевдоним_2] [, [таблица.]поле_2 [AS псевдоним_2] [, ...]]}
• FROM выражение [, ...] [IN внешняяБазаДанных]
• [WHERE... ]
• [GROUP BY... ]
• [HAVING... ]
• [ORDER BY... ]
• [WITH OWNERACCESS OPTION]

Пример инструкции
• SELECT Сотрудники.Отдел, Начальники.Начальник FROM
Сотрудники INNER JOIN Начальники ON Сотрудники.Отдел =
Начальники.Отдел WHERE Сотрудники.Отдел = “Отдел продаж”;
Инструкции SQL

Инструкция SELECT...INTO
• Создает запрос на создание таблицы.
• Синтаксис
• SELECT поле_1[, поле_2[, ...]] INTO
новаяТаблица [IN внешняяБазаДанных]
FROM источник

Пример инструкции
• SELECT Сотрудники.Фамилия,
Сотрудники.Имя, Сотрудники.Отдел,
Начальники.Начальник INTO ShortList FROM
Сотрудники INNER JOIN Начальники WHERE
Сотрудники.Отдел = Начальники.Отдел;
Инструкции SQL


Инструкция INSERT INTO
Добавляет запись или записи в таблицу. Эта
инструкция образует запрос на добавление
записей.
• Синтаксис
• Запрос на добавление нескольких записей:
• INSERT INTO назначение [IN внешняяБазаДанных]
[(поле_1[, поле_2[, ...]])] SELECT [источник.]поле_1[,
поле_2[, ...] FROM выражение
• Запрос на добавление одной записи:
• INSERT INTO назначение [(поле_1[, поле_2[, ...]])]
VALUES (значение_1[, значение_2[, ...])
Инструкции SQL


Инструкция UPDATE
Создает запрос на обновление, который
изменяет значения полей указанной таблицы
на основе заданного условия отбора.
• Синтаксис
• UPDATE таблица SET новоеЗначение WHERE
условиеОтбора;

Пример инструкции:
• UPDATE Заказы SET СуммаЗаказа = СуммаЗаказа *
1.1, СтоимостьДоставки = СтоимостьДоставки * 1.03
WHERE СтранаПолучателя = 'Грузия';
Инструкции SQL


Инструкция DELETE
Создает запрос на удаление записей,
предназначенный для удаления записей из
одной или нескольких таблиц, перечисленных
в предложении FROM, которые удовлетворяют
предложению WHERE.
• Синтаксис


DELETE [таблица.*] FROM таблица WHERE
условиеОтбора
Пример инструкции:
• DELETE * FROM Заказы WHERE СтранаПолучателя =
'Германия';
Формы в MS Access
Для ввода информации и
редактирования данных в таблицах
удобнее всего использовать
различные формы ввода-вывода.
 Разработка таких форм может быть
выполнена с помощью:

• Мастера форм;
• Конструктора форм;
• Готовых шаблонов форм.
Использование Мастера форм
Конструктор форм
Организация вывода и представление
информации в СУБД Access




Для представления промежуточной и итоговой
информации в системах управления базами
данных традиционно используется такое
средство как отчет.
В современных СУБД отчеты могут быть
выведены на экран, принтер или выходной
файл для последующей передачи данных.
Кроме того, в СУБД Access последних версий
включен специальный объект — Страницы —
позволяющий размещать выходные данные на
Web-страницах.
Процесс создания отчетов подобен созданию
форм и для разработки используется режим
либо Мастера, либо Конструктора отчетов.
Мастер отчетов
Мастер отчетов
Конструктор отчетов
Формирование отчета



Отчет формируется на основании созданного макета
отчета и состояния базы данных, актуального в момент
открытия отчета.
Полученные данные могут быть выведены на печать или
экспортированы в другие приложения Microsoft Office (в
текстовый редактор Word или электронные таблицы
Excel).
Средства генерации отчетов играют важную роль в
информационных системах, поскольку позволяют
формировать выходную информацию на основе текущего
состояния информации, хранящейся в базах данных
системы.
Автоматизация обработки в
СУБД Access


Средством автоматизации обработки
информации в СУБД Access являются макросы
— наборы макрокоманд, выполняющих
рутинные операции с БД. Для работы с
макросами в СУБД Access выделен
специальный раздел БД с одноименным
названием.
Для работы с макросами существует только
режим Конструктора, создать с помощью
которого макрос можно нажатием кнопки
Создать на панели в верхней части окна базы
данных.
Конструктор макросов

Окно Конструктора макросов
содержит четыре:
• имя макроса — определяет
группу связанных
макрокоманд;
• условие — логическое
выражение, определяющее
условие применения
макрокоманды или группы
макрокоманд;
• макрокоманда —
элементарная операция,
выполняемая автоматически
(выбирается из списка);
• примечания — комментарий
к выполняемой
макрокоманде (может быть
произвольным, не оказывает
влияние на выполнение
команд).
Модули в Access

Программные модули создаются с помощью
высокоуровневого языка программирования Visual Basic
for Application (VBA). Создаваемые программные модули
представляют собой стандартные модули или модули
классов и содержат процедуры двух типов:
• подпрограммы Sub, выполняющие предписанные действия
или производящие вычисления, не возвращают значений;
• функции Function, возвращающие значения, которые могут
быть использованы в других вычислениях.

Использование макросов и модулей позволяет
разработчикам выполнить автоматизацию выполнения
манипуляций с данными, выполнить привязку таких
действий к конкретным событиям работы с
информационной системой (открытие формы, нажатие
кнопки управления и т.д.).
Download