Модель данных. Виды моделей данных бд

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://allbest.ru

Модели базы данных

Введение

информационный программный данные

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

обеспечивать получение общих и/или детализированных отчетов по итогам работы;

позволять легко определять тенденции изменения важнейших показателей;

обеспечивать получение информации, критической по времени, без существенных задержек;

выполнять точный и полный анализ данных.

Современные СУБД в основном являются приложениями Windows, так как данная среда позволяет более полно использовать возможности персональной ЭВМ, нежели среда DOS. Снижение стоимости высокопроизводительных ПК обусловил не только широкий переход к среде Windows, где разработчик программного обеспечения может в меньше степени заботиться о распределении ресурсов, но также сделал программное обеспечение ПК в целом и СУБД в частности менее критичными к аппаратным ресурсам ЭВМ.

Среди наиболее ярких представителей систем управления базами данных можно отметить: Lotus Approach, Microsoft Access, Borland dBase, Borland Paradox, Microsoft Visual FoxPro, Microsoft Visual Basic, а также баз данных Microsoft SQL Server и Oracle, используемые в приложениях, построенных по технологии «клиент-сервер». Фактически, у любой современной СУБД существует аналог, выпускаемый другой компанией, имеющий аналогичную область применения и возможности, любое приложение способно работать со многими форматами представления данных, осуществлять экспорт и импорт данных благодаря наличию большого числа конвертеров. Общепринятыми, также, являются технологи, позволяющие использовать возможности других приложений, например, текстовых процессоров, пакетов построения графиков и т.п., и встроенные версии языков высокого уровня (чаще - диалекты SQL и/или VBA) и средства визуального программирования интерфейсов разрабатываемых приложений. Поэтому уже не имеет существенного значения на каком языке и на основе какого пакета написано конкретное приложение, и какой формат данных в нем используется. Более того, стандартом «де-факто» стала «быстрая разработка приложений» или RAD (от английского Rapid Application Development), основанная на широко декларируемом в литературе «открытом подходе», то есть необходимость и возможность использования различных прикладных программ и технологий для разработки более гибких и мощных систем обработки данных. Поэтому в одном ряду с «классическими» СУБД все чаще упоминаются языки программирования Visual Basic 4.0 и Visual C++, которые позволяют быстро создавать необходимые компоненты приложений, критичные по скорости работы, которые трудно, а иногда невозможно разработать средствами «классических» СУБД. Современный подход к управлению базами данных подразумевает также широкое использование технологии «клиент-сервер».

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

1.Базы данных

Общие положения

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

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

Структурирование -- это введение соглашений о способах представления данных.

Неструктурированными называют данные, записанные, например, в текстовом файле.

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

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

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

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

Централизованный характер управления данными в базе данных предполагает необходимость существования некоторого лица (группы лиц), на которое возлагаются функции администрирования данными, хранимыми в базе.

Классификация баз данных

По технологии обработки данных базы данных подразделяются на централизованные и распределе нные.

Централизованная база данных хранится в памяти одной вычислительной системы. Если эта вычислительная система является компонентом сети ЭВМ, возможен распределенный доступ к такой базе. Такой способ использования баз данных часто применяют в локальных сетях ПК.

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

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

Системы централизованных баз данных с сетевым доступом предполагают различные архите ктуры подобных систем;

* файл-сервер;

* клиент-сервер.

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

Клиент-сервер. В этой концепции подразумевается, что помимо хранения централизованной базы данных центральная машина (сервер базы данных) должна обеспечивать выполнение основного объема обработки данных. Запрос на данные, выдаваемый клиентом (рабочей станцией), порождает поиск и извлечение данных на сервере. Извлеченные данные (но не файлы) транспортируются по сети от сервера к клиенту. Спецификой архитектуры клиент-сервер является использование языка запросов SOL.

Структурные элементы базы данных

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

Поле -- элементарная единица логической организации данных, которая соответствует неделимой единице информации -- реквизиту. Для описания поля используются следующие характеристики:

имя, например. Фамилия, Имя, Отчество, Дата рождения;

тип, например, символьный, числовой, календарный;

длина, например, 15 байт, причем будет определяться максимально возможным количеством символов;

точность для числовых данных, например два десятичных знака для отображения дробной части числа.

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

Файл (таблица) -- совокупность экземпляров записей одной структуры.

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

2.Виды моделей данных
Общие положения

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

Модель данных -- совокупность структур данных и операций их обработки.

СУБД основывается на использовании иерархической, сетевой или реляционной модели, на комбинации этих моделей или на некотором их подмножестве [I].

Рассмотрим три основных типа моделей данных: иерархическую, сетевую и реляционную.

Иерархическая модель данных

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

К основным понятиям иерархической структуры относятся: уровень, элемент (узел), связь. Узел -- это совокупность атрибутов данных, описывающих некоторый объект. На схеме иерархического дерева узлы представляются вершинами графа. Каждый узел на более низком уровне связан только с одним узлом, находящимся на более высоком уровне. Иерархическое дерево имеет только одну вершину (корень дерева), не подчиненную никакой другой вершине и находящуюся на самом верхнем (первом) уровне. Зависимые (подчиненные) узлы находятся на втором, третьем и т.д. уровнях. Количество деревьев в базе данных определяется числом корневых записей.

К каждой записи базы данных существует только один (иерархический) путь от корневой записи.

Сетевая модель данных

В сетевой структуре при тех же основных понятиях (уровень, узел, связь) каждый элемент может быть связан с любым другим элементом.

Реляционная модель данных

Понятие реляционный (англ. relation -- отношение) связано с разработками известного американского специалиста в области систем баз данных Е. Кодда.

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

Реляционная модель ориентирована на организацию данных в виде двумерных таблиц. Каждая реляционная таблица представляет собой двумерный массив и обладает следующими свойствами:

· каждый элемент таблицы -- один элемент данных;

· все столбцы в таблице однородные, т.е. все элементы в столбце имеют одинаковый тип (числовой, символьный и т.д.) и длину;

· каждый столбец имеет уникальное имя;

· одинаковые строки в таблице отсутствуют;

· порядок следования строк и столбцов может быть произвольным.

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

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

Чтобы связать две реляционные таблицы, необходимо ключ первой таблицы ввести в состав ключа второй таблицы (возможно совпадение ключей); в противном случае нужно ввести в структуру первой таблицы внешний ключ -- ключ второй таблицы.

3.По нятие информационного объекта

Информационный объект -- это описание некоторой сущности (реального объекта, явления, процес са, события) в виде совокупности логически связанных реквизитов (информационных элементов). Т а кими сущностями для информационных объектов могут служить: цех, склад, материал, вуз, студент, сдача экзаменов и т.д.

Информационный объект определенного реквизитного состава и структуры образует класс (тип), которому присваивается уникальное имя (символьное обозначение), например Студент, Сессия, Ст ипендия.

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

4.Понятие нормализации отношений

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

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

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

Выделены три нормальные формы отношений и предложен механизм, позволяющий любое отношение преобразовать к третьей (самой совершенной) нормальной форме.

Первая нормальная форма

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

Например, отношение Студент = (Номер, Фамилия, Имя, Отчество, Дата, Группа) наводится в первой нормальной форме.

Вторая нормальная форма

Чтобы рассмотреть вопрос приведения отношений ко второй нормальной форме, необходимо дать п ояснения к таким понятиям, как функциональная зависимость и полная функциональная зависимость.

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

Функциональная зависимость реквизитов -- зависимость, при которой экземпляре информационного объекта определенному значению ключевого реквизита соответствует только одно значение описательного реквизита.

Такое определение функциональной зависимости позволяет при анализе всех взаимосвязей реквизитов предметной области выделить самостоятельные информационные объекты.

В случае составного ключа вводится понятие функционально полной зависимости.

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

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

Третья нормальная форма

Понятие третьей нормальной формы основывается на понятии нетранзитивной зависимости.

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

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

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

ТИПЫ СВЯЗЕЙ

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

один к одному (1:1);

один ко многим (1: М);

многие ко многим (М: М).

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

При связи один ко многим (1:М) одному экземпляру информационного объекта А соответствует 0, 1 или более экземпляров объекта В, но каждый экземпляр объекта В связан не более чем с 1 экземпляром объекта А. Графически данное соответствие имеет вид.

Связь многие ко многим (М:М) предполагает, что в каждый момент времени одному экземпляру информационного объекта А соответствует 0, 1 или более экземпляров объекта В и наоборот.

Архитектура СУБД

Базы данных и программные средства их создания и ведения (СУБД) имеют многоуровневую архитектуру.

Различают концептуальный, внутренний и внешний уровни представления данных баз данных, которым соответствуют модели аналогичного назначения,

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

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

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

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

Понятие информационно-логической модели

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

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

Информационно-логическая (мифологическая) модель предметной области отражает предметную область в виде совокупности информационных объектов и их структурных связей.

Инфологическая модель предметной области строится первой. Предварительная инфологическая модель строится еще на пред проектной стадии и затем уточняется на более поздних стадиях проект ирования баз данных. Затем на ее основе строятся концептуальная (логическая), внутренняя (физическая) и внешняя модели.

5.Функциональные возможности СУБД

Обзор СУБД

Системой управления базами данных называют программную систему, предназначенную для создания на ЭВМ общей базы данных, используемой для решения множества задач. Подобные системы служат для поддержания базы данных в актуальном состоянии и обеспечивают эффективный доступ пользователей к содержащимся в ней данным в рамках предоставленных пользователям полномочий.

СУБД предназначена для централизованного управления базой данных в интересах всех работающих в этой системе.

По степени универсальности различают два класса СУБД:

системы общего назначения;

специализированные системы.

СУБД общего назначения не ориентированы на какую-либо предметную область или на информационные потребности какой-либо группы пользователей. Каждая система такого рода реализуется как программный продукт, способный функционировать на некоторой модели ЭВМ в определенной операционной системе и поставляется многим пользователям как коммерческое изделие. Такие СУБД обладают средствами настройки на работу с конкретной базой данных. Использование СУБД общего назначения в качестве инструментального средства для создания автоматизированных информационных систем, основанных на технологии баз данных, позволяет существенно сокращать сроки разработки, экономить трудовые ресурсы. Этим СУБД присущи развитые функциональные возможности и даже определенная функциональная избыточность.

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

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

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

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

Рассмотрим основные характеристики некоторых СУБД -- лидеров на рынке программ, предназначенных как для разработчиков информационных систем, так и для конечных пользователей,

В рассматриваемую группу программных продуктов вошли:

dBASE IV 2.0, компании Borland International;

Microsoft Access 2.0;

Microsoft FoxPro 2.6 for DOS;

Microsoft FoxPro 2.6 for Windows, корпорации Microsoft Corp;

Paradox for DOS 4.5;

Paradox for Windows, версия 4.5 компании Borland.

Производительность СУБД

Производительность СУБД оценивается:

временем выполнения запросов;

скоростью поиска информации в неиндексированных полях;

временем выполнения операций импортирования базы данных из других форматов;

скоростью создания индексов и выполнения таких массовых операций, как обновление, вставка, удаление данных;

максимальным числом параллельных обращений к данным в многопользовательском режиме;

временем генерации отчета.

На производительность СУБД оказывают влияние два фактора:

СУБД, которые следят за соблюдением целостности данных, несут дополнительную нагрузку, которую не испытывают другие программы;

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

Самые быстрые программные изделия отнюдь не обладают самыми развитыми функциональными возможностями на уровне процессора СУБД.

Самой быстрой СУБД является FoxPro 2.6, однако она не обладает средствами соблюдения целостности данных в отличие от более медленной СУБД Access 2.0.

Обеспечение целостности данных на уровне базы данных

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

К средствам обеспечения целостности данных на уровне СУБД относятся:

* встроенные средства для назначения первичного ключа, в том числе средства для работы с типом полей с автоматическим приращением, когда СУБД самостоятельно присваивает новое уникальное значение;

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

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

Access и Paradox for Windows гораздо ближе других СУБД соответствуют реляционной модели по надежности сохранения целостности данных на уровне базы данных; правила хранятся вместе с базой данных и автоматически соблюдаются.

СУБД dBASE IV и FoxPro 2.6 (DOS и WINDOWS) совсем не обладают средствами этого рода, и ввод в программу процедур, обеспечивающих выполнение правил целостности, возлагается на программиста.

Обеспечение безопасности

Некоторые СУБД предусматривают средства обеспечения безопасности данных. Такие средства обеспечивают выполнение следующих операций:

* шифрование прикладных программ;

* шифрование данных;

* защиту паролем;

* ограничение уровня доступа (к базе данных, к таблице, к словарю, для пользователя).

Самый высокий уровень безопасности данных реализован в СУБД dBASE IV. Администратор может назначать системе различные права доступа на уровне файла, поля, а также организовать автоматическое шифрование данных.

Хорошими характеристиками обеспечения безопасности отличается Access 2.0. Он предусматривает назначение паролей для индивидуальных пользователей или групп пользователей и присвоение различных прав доступа отдельно таблицам, запросам, отчетам, макрокомандам или новым объектам на уровне пользователя или группы.

Работа в многопользовательских средах

Практически все рассматриваемые СУБД предназначены для работы в многопользовательских средах, но обладают для этого различными возможностями.

Обработка данных в многопользовательских средах.предполагает выполнение программным продуктом следующих функций: :

* блокировку базы данных, файла, записи, поля;

* идентификацию станции, установившей блокировку;

* обновление информации после модификации;

* контроль за временем и повторение обращения;

* обработку транзакций (транзакция -- последовательность операций пользователя над базой данных, которая сохраняет ее логическую целостность);

* работу с сетевыми системами (LAN Manager, NetWare, Unix).

Лучшими возможностями для работы в многопользовательских средах обладают СУБД Paradox for DOS 4.5, Access 2.0 и dBASE IV.

Импорт-экспорт

Эта характеристика отражает:

* возможность обработки СУБД информации, подготовленной другими программными средствами;

* возможность использования другими программами данных, сформированных средствами рассматриваемой СУБД.

Особый интерес представляют следующие форматы файлов: ASCII-файлы, .DBF,WK*, .XLS.

Все рассматриваемые здесь СУБД обладают хорошими возможностями импорта-экспорта данных.

Доступ к данным посредством языка SQL

Язык запросов SQL (Structured Query Language) реализован в целом ряде популярных СУБД для различных типов ЭВМ либо как базовый, либо как альтернативный. В силу своего широкого использования является международным стандартом языка запросов. Язык SQL предоставляет развитые возможности как конечным пользователям, так и специалистам в области обработки данных .

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

СУБД имеют доступ к данным SQL в следующих случаях:

базы данных совместимы с ODBC (Open Database Connectivity -- открытое соединение баз данных);

реализована естественная поддержка SQL-баз данных;

возможна реализация SQL-запросов локальных данных.

Многие СУБД могут "прозрачно" подключаться к входным SQL-подсисТемам с помощью ODBC или драйверов, являющихся их частью, поэтому существует возможность создания прикладных программ для них. Некоторые программные продукты также с SQL при обработке интерактивных запросов на получение данных, находящихся сервере или на рабочем месте.

Access 2.0 и Paradox for Windows работают с источниками SQL-данных, совместимых с системой ODBC.

FoxPro (for dos и for Windows) поставляются с дополнительными библиотеками, которые обеспечивают доступ к SQL-базам данных, способным работать совместно с системой ODBC, но эта возможность менее интегрирована, чем средства первичного ввода информации в Access и Paradox for Windows.

Можно напрямую управлять базами данных Access с помощью языка SQL и передавать сквозные SQL-запросы совместимым со спецификацией ODBC SQL-базам данных, таким, как MS SQL Server и Oracle, так что Access способна служить средством разработки масштабируемых систем клиент-сервер.

Возможности запросов и инструментальные средства разработки прикладных программ

СУБД, ориентированные на разработчиков, обладают развитыми средствами для создания приложений. К элементам инструментария разработки приложений можно отнести:

* мощные языки программирования;

* средства реализации меню, экранных форм ввода-вывода данных и генерации отчетов;

* средства генерации приложений (прикладных программ);

* генерацию исполнимых файлов.

Функциональные возможности моделей данных доступны пользователю СУБД благодаря ее языковым средствам.

Реализация языковых средств интерфейсов может быть осуществлена различными способами. Для высококвалифицированных пользователей (разработчиков сложных прикладных систем) языковые средства чаще всего представляются в их явной синтаксической форме, В других случаях функции языков могут быть доступны косвенным образом, когда они реализуются в форме различного рода меню, диалоговых сценариев или заполняемых пользователем таблиц. По таким входным данным интерфейсные средства формируют адекватные синтаксические конструкции языка интерфейса и передают их на исполнение или включают в генерируемый программный код приложения. Интерфейсы с неявным использованием языка широко используются в СУБД для персональных ЭВМ. Примером такого языка является язык QBE (Query-By-Example).

Языковые средства используются для выполнения двух основных функций:

описания представления базы данных;

выполнения операций манипулирования данными.

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

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

Язык манипулирования данными (ЯМД) позволяет запрашивать предусмотренные в системе операции над данными из базы данных.

Имеются многочисленные примеры языков СУБД, объединяющих возможности описания данных и манипулирования данными в единых синтаксических рамках. Популярным языком такого рода является реляционный язык SQL.

СУБД dBASE IV и FoxPro поддерживают язык программирования xBASE, который до сих пор является важным стандартом для баз данных.

FoxPro 2.6 придает xBASE-программам оконные, событийно-управляемые качества. При составлении прикладной программы FoxPro использует диспетчер проекта, управляющий различными файлами исходного текста и данных. Эта составляющая отслеживает индивидуальные элементы: программы, наборы экранных форм, отчеты и файлы баз данных и позволяет компилировать прикладную программу в исполнимый файл.

Язык программирования Access Basic содержит функции обеспечения связи по протоколу OLE 2.0, позволяющие управлять объектами из других прикладных программ, совместимых с OLE 2.0. Кроме того, этот язык позволяет создавать объекты баз данных (запросы, таблицы), изменять структуру базы данных и создавать индексы непосредственно из прикладной программы.

Все рассматриваемые программные средства обладают автоматизированными средствами создания экранных форм, запросов, отчетов, меню, наклеек, стандартных писем. Для создания указанных визуальных и структурных объектов ряд СУБД использует специальные инструментальные средства, называемые "мастерами" или " волшебниками".

6. Команды для выполнения типовых операций
Типовая структура интерфейса

При работе с СУБД на экран выводятся рабочее поле и панель управления. Панель управления при этом включает меню, вспомогательную область управления и строку подсказки. Расположение этих областей на экране может быть произвольным и зависит от особенностей конкретной программы. Некоторые СУБД позволяют выводить на экран окно директив (командное окно) или строку команд. Познакомиться с видом экрана таких программных средств можно на примере окна СУБД Access 2.0.

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

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

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

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

Программы СУБД имеют достаточное количество команд, у каждой из которых возможны различные параметры (опции). Такая система команд совместно с дополнительными опциями образует меню со своими особенностями для каждого типа СУБД- Выбор определенной команды из меню производится одним из следующих двух способов;

наведением курсора на выбранную в меню команду при помощи клавиш управления курсором и нажатием клавиши ввода;

вводом с клавиатуры первой буквы выбранной команды.

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

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

команды для работы с файлами;

команды редактирования;

команды форматирования;

команды для работы с окнами;

команды для работы в основных режимах СУБД (таблица, форма, запрос, отчет);

получение справочной информации.

Команды для работы с файлами

При работе с файлами программа дает возможность пользователю:

* создавать новые объекты базы данных;

* сохранять и переименовывать ранее созданные объекты;

* открывать уже существующие базы данных;

* закрывать ранее открытые объекты;

* выводить на принтер объекты базы данных.

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

Команда предварительного просмотра позволяет получить представление об общем виде выводимой на принтер информации еще до печати. Размещение информации на странице может быть оптимально приспособлено к ее выбранным параметрам посредством масштабирования и центрирования.

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

Команды редактирования

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

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

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

Команды форматирования

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

область, на которую распространяется действие команды. Если этого не сделать, то новые параметры форматирования будут определены только для активного компонента.

Выбор формата и направления выравнивания производится автоматически в зависимости от характера вводимых данных. Данные, интерпретируемые программой как текст, выравниваются по левому краю, а числа -- по правому. Автоматический выбор формата и способа выравнивания производится только в том случае, если для заполняемых ячеек пользователем предварительно не заданы другие параметры.

Команды для работы с окнами

Большинство СУБД дает возможность открывать одновременно множество окон, организуя тем самым "многооконный режим" работы; При этом некоторые окна будут видны на экране, другие находиться под ними. Открыв несколько окон, вы можете сразу работать с несколькими таблицами, быстро пер емещаясь от одной к другой. Существуют специальные команды, позволяющие открывать новое окно, переходить в другое окно, изменять взаимное расположение и размеры окон на экране. Кроме того, у пользователя имеется возможность разделить окно на две части для одновременного просмотра различных частей большой таблицы или фиксировать некоторую часть таблицы, которая не будет исчезать с экрана при перемещении курсора в дальние части таблицы.

Система получения справочной информации

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

Общее представление об этапах технологии

Каждая конкретная СУБД имеет свои особенности, которые необходимо учитывать.

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

В качестве основных этапов обобщенной технологии работы с СУБД, можно выделить следующие:

создание структуры таблиц базы данных;

ввод и редактирование данных в таблицах;

обработка данных, содержащихся в таблицах;

вывод информации из базы данных.

Создание структуры таблиц базы данных

При формировании новой таблицы базы данных работа с СУБД начинается с создания структуры та блицы. Этот процесс включает определение перечня полей, из которых состоит каждая запись таблицы, а также типов и размеров полей.

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

СУБД предназначенные для работы в Windows, могут формировать поля типа объекта OLE, которые используются для хранения рисунков, графиков, таблиц.

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

Создание структуры таблицы не связано с заполнением таблиц данными, поэтом) две операции можно разнести во времени.

Ввод и редактирование данных

Заполнение таблиц данными возможно как непосредственным вводом данных, так и в результате в ыполнения программ и запросов.

Практически все СУБД позволяют вводить и корректировать данные в таблицах двумя способами:

* с помощью предоставляемой по умолчанию стандартной формы в виде таблицы;

* с помощью экранных форм, специально созданных для этого пользователем,

СУБД работающие с Windows, позволяют вводить в созданные экранные формы рисунки, узоры, кнопки. Возможно построение форм, наиболее удобных для работы пользователя, включающих записи различных связанных таблиц базы данных.

Обработка данных, содержащихся в таблицах

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

Конечный пользователь получает при работе с СУБД такое удобное средство обработки информации, как запросы. Запрос представляет собой инструкцию на отбор записей.

Большинство СУБД разрешают использовать запросы следующих типов:

* запрос-выборка, предназначенный для отбора данных, хранящихся в таблицах, и не изменяющий эти данные;

* запрос-изменение, предназначенный для изменения или перемещения данных; к этому типу запросов относятся: запрос на добавление записей, запрос на удаление записей, запрос на создание таблицы, запрос на обновление;

* запрос с параметром, позволяющий определить одно или несколько условий отбора во время выполнения запроса,

Самым распространенным типом запроса является запрос на выборку. Результатом выполнения запроса является таблица с временным набором данных (динамический набор). Записи динамического набора могут включать поля из одной или нескольких таблиц базы данных. На основе запроса можно построить отчет или форму.

Вывод информации из базы данных

Практически любая СУБД позволяет вывести на экран и принтер информацию, содержащуюся в базе данных, из режимов таблицы или формы. Такой порядок вывода данных может использоваться только как черновой вариант, так как позволяет выводить данные только точно в таком же виде, в каком они содержатся в таблице или форме.

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

* включать в отчет выборочную информацию из таблиц базы данных;

* добавлять информацию, не содержащуюся в базе данных;

* при необходимости выводить итоговые данные на основе информации базы данных;

* располагать выводимую в отчете информацию в любом, удобном для пользователя виде (вертикальное или горизонтальное расположение полей);

* включать в отчет информацию из разных связанных таблиц базы данных.

7. Информационная модель СУБД

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

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

Процесс создания информационной модели начинается с определения концептуальных требований ряда пользователей. Концептуальные требования могут определяться и для некоторых задач (приложений), которые в ближайшее время реализовывать не планируется. Это может несколько повысить трудоемкость работы, однако поможет наиболее полно учесть все нюансы функциональности, требуемой для разрабатываемой системы, и снизит вероятность переделки в дальнейшем. Требования отдельных пользователей должны быть представлены в едином «обобщенном представлении». Последнее называют концептуальной моделью.

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

Объекты объединяются в классы по общим характеристикам. Например, в предложении «Белый Дом является зданием», «Белый Дом» представляет объект, а «здание» - класс. Классы обозначаются абстрактными существительными.

Класс - это множество предметов реального мира, связанных общностью структуры и поведением.

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

Проектирование концептуальной модели базы данных:

Анализ данных: сбор основных данных (например, объекты, связи между объектами).

Определим первоначальные данные:

Заявки - поступающие от магазинов на определённый период.

Договора - заключаются с поставщиками на определённый вид товара.

Поставщики - организации или физические лица, с которыми заключаются договора на поставку товара.

Заказчики - в основном магазины, а также предприятия и организации, подающие заказ на приобретение того или иного товара.

Счета - ведутся на этапе заключения договором с поставщиками, а также с заказчиками.

Накладные - создаются на основании получения заказа о заказчика, для отгрузки.

Справки - получение/выдача различных справок как заказчику так и поставщику.

Товар - присутствует на основании заявки и договора с поставщиком.

Определение взаимосвязей.

Взаимосвязь выражает отображение или связь между двумя множес твами данных. Различают взаимосвязи типа «один к одному», «один ко многим» и «многие ко многим».

Например, если заказчик производит заказ на покупку товара впервые, осуществляется первичная регистрация его данных и сведений о сделанном заказе. Если же заказчик производит заказ повторно, осуществляется регистрация только данного заказа. Вне зависимости от того, сколько раз данный заказчик производил заказы, он имеет уникальный идентификационный номер (уникальный ключ заказа). Информация о каждом заказчике включает наименование заказчика, адрес, телефон, факс, фамилию, имя, отчество, признак юридического лица и примечание. Таким образом, свойствами объекта Заказчик являются «уникальный ключ заказчика», «наименование заказчика».

Следующий представляющий для нас интерес объект -- Товар. Этот объект имеет свойства «уникальный ключ товара», «наименование товара».

Второй рассматриваемый объект -- Поставщик. Его свойствами являются «уникальный ключ поставщика», «наименование поставщика».

Третий рассматриваемый объект -- Заказчик. Его свойствами являются «уникальный ключ заказчика», «наименование заказчика».

Взаимосвязь «один к одному» (между двумя типами объектов)

Допустим, в определенный момент времени один заказчик может сд елать только один заказ. В этом случае между объектами Заказчик и Товар устанавливается взаимосвязь «один к одному».

Взаимосвязь «один ко многим» (между двумя типами объектов)

В определенный момент времени один заказчик может стать облад ателем нескольких товаров, при этом несколько заказчиков не могут являться обладателями одного товара (на условии если заказчик не претендует на часть товара). Взаимосвязь «один ко многим» можно обозначить с помощью одинарной стрелки в направлении к «одному» и двойной стрелки в направлении ко «многим» .В этом случае одной записи данных первого объекта (его часто называют родительским или основным) будет соответствовать несколько записей второго объекта (дочернего или подчиненного). Взаимосвязь «один ко многим» очень распространена при разработке реляционных баз данных. В качестве родительского объекта часто выступает справочник, а в дочернем хранятся уникальные ключи для доступа к записям справочника. В нашем примере в качестве такого справочника можно представить объект Заказчик, в котором хранятся сведения о всех заказчиках. При обращении к записи для определенного заказчика нам доступен список всех покупок, которые он сделал, и сведения о которых хранятся в объекте Товар.

...

Подобные документы

    Понятие и структура банка данных. Основные структурные элементы базы данных. Система управления базами данных. Преимущества централизации управления данными. Понятие информационного объекта. Современные технологии, используемые в работе с данными.

    курсовая работа , добавлен 02.07.2011

    Обзор и сравнительная характеристика программного обеспечения для создания СУБД. Принципы организации данных. Основные возможности MS Access. Разработка структуры и реализация средствами SQL базы данных для учета заказов, наличия и продажи автозапчастей.

    курсовая работа , добавлен 27.05.2013

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

    научная работа , добавлен 08.06.2010

    Базы данных с двумерными файлами и реляционные системы управления базами данных (СУБД). Создание базы данных и обработка запросов к ним с помощью СУБД. Основные типы баз данных. Базовые понятия реляционных баз данных. Фундаментальные свойства отношений.

    реферат , добавлен 20.12.2010

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

    презентация , добавлен 19.08.2013

    Теоретические аспекты СУБД. Основные понятия. Функциональные возможности СУБД. Архитектура систем управления. Разработка базы данных. Крупные массивы данных размещают, как правило, отдельно от исполняемого программы, и организуют в виде базы данных.

    курсовая работа , добавлен 23.02.2006

    Концептуальная модель базы данных "Бюро по трудоустройству". Разработка информационного и программного обеспечения объектов автоматизации. Реализация базы данных в СУБД MsAccess. Запросы к базе данных. Таблицы, отчеты и макросы. Интерфейс пользователя.

    курсовая работа , добавлен 30.05.2016

    Порядок проектирования и разработки базы данных и программного обеспечения. Информация о структуре базы данных, созданных таблицах, формах, отчетах, запросах, хранимой информации. Логическая и концептуальная модели данных; выбор программного обеспечения.

    курсовая работа , добавлен 20.01.2010

    Развитая автоматизированная информационная система как условие обеспечения эффективного функционирования организации. Проектирование и построение информационной логической модели базы данных. Краткая характеристика Access. Разработка структуры таблиц.

    курсовая работа , добавлен 27.02.2009

    Классификация моделей построения баз данных. Работа с реляционными базами данных: нормализация таблиц, преобразование отношений полей, преобразование функциональной модели в реляционную. Понятие языка определения данных и языка манипуляции данными.

Различают три основные модели базы данных - это иерархическая, сетевая и реляционная. Эти модели отличаются между собой по способу установления связей между данными.

8.1. Иерархическая модель базы данных

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

Иерархические базы данных . Иерархические базы данных графически могут быть представлены как перевернутое дерево , состоящее из объектов различных уровней. Верхний уровень (корень дерева ) занимает один объект , второй - объекты второго уровня и так далее.

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

Рис. 6. Иерархическая база данных

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

Атрибут (элемент данных)

Наименьшая единица структуры данных. Обычно каждому элементу при описании базы данных присваивается уникальное имя. По этому имени к нему обращаются при обработке. Элемент данных также часто называют полем.

Запись

Именованная совокупность атрибутов. Использование записей позволяет за одно обращение к базе получить некоторую логически связанную совокупность данных. Именно записи изменяются, добавляются и удаляются. Тип записи определяется составом ее атрибутов. Экземпляр записи - конкретная запись с конкретным значением элементов.

Групповое отношение

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

Пример. Рассмотрим следующую модель данных предприятия (см. рис. 7): предприятие состоит из отделов, в которых работают сотрудники. В каждом отделе может работать несколько сотрудников, но сотрудник не может работать более чем в одном отделе.

Поэтому, для информационной системы управления персоналом необходимо создать групповое отношение, состоящее из родительской записи ОТДЕЛ (НАИМЕНОВАНИЕ_ОТДЕЛА, ЧИСЛО_РАБОТНИКОВ) и дочерней записи СОТРУДНИК (ФАМИЛИЯ, ДОЛЖНОСТЬ, ОКЛАД). Это отношение показано на рис. 7 (а) (Для простоты полагается, что имеются только две дочерние записи).

Для автоматизации учета контрактов с заказчиками необходимо создание еще одной иерархической структуры: заказчик - контракты с ним - сотрудники, задействованные в работе над контрактом. Это дерево будет включать записи ЗАКАЗЧИК (НАИМЕНОВАНИЕ_ЗАКАЗЧИКА, АДРЕС), КОНТРАКТ(НОМЕР, ДАТА,СУММА), ИСПОЛНИТЕЛЬ (ФАМИЛИЯ, ДОЛЖНОСТЬ, НАИМЕНОВАНИЕ_ОТДЕЛА) (рис. 7b).

Рис. 7. Пример иерархической БД

Из этого примера видны недостатки иерархических БД :

Частично дублируется информация между записями СОТРУДНИК и ИСПОЛНИТЕЛЬ (такие записи называют парными), причем виерархической модели данных не предусмотрена поддержка соответствия между парными записями.

Иерархическая модель реализует отношение между исходной и дочерней записью по схеме 1:N, то есть одной родительской записи может соответствовать любое число дочерних.

Допустим теперь, что исполнитель может принимать участие более чем в одном контракте (т.е. возникает связь типа M:N). В этом случае в базу данных необходимо ввести еще одно групповое отношение , в котором ИСПОЛНИТЕЛЬ будет являться исходной записью, а КОНТРАКТ - дочерней (рис. 7 c). Таким образом, мы опять вынуждены дублировать информацию.

Иерархическая структура предполагаета неравноправие между данными - одни жестко подчинены другим. Подобные структуры, безусловно, четко удовлетворяют требованиям многих, но далеко не всех реальных задач.

Иерархическая модель данных

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

Иерархическую БД образует каталог файлов, хранимых на диске; дерево каталогов, доступное для просмотра в Total Commander, - наглядная демонстрация структуры такой БД и поиска в ней нужного элемента. Такой же БД является родовое генеалогическое дерево.

Сетевая модель данных

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

Сетевой БД фактически является Всемирная паутина глобальной компьютерной сети Интернет. Гиперссылки связывают между собой сотни миллионов документов в единую сетевую БД.

Реляционная модель данных

В реляционной БД под записью понимается строка прямоугольной таблицы. Элементы записи образуют столбцы этой таблицы (поля). Все элементы в столбце имеют одинаковый тип (числовой, символьный), а каждый столбец - неповторяющееся имя. Одинаковые строки в таблице отсутствуют.

Преимущества таких БД ─ наглядность и понятность организации данных, скорость поиска нужной информации.

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

Любой тип можно свести к реляционному.

Типы данных

Тип данных определяет множество значений, которые может принимать данное поле в различных записях.

Основные типы данных в современных БД:

    числовой;

    текстовый;

  • дата / время;

    денежный;

    логический;

Ключи

    Суперключ - это одно или несколько полей таблицы, которые однозначно определяют каждую строку в таблице

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

    Первичный ключ – это потенциальный ключ, выбранный, для однозначной идентификации каждой строки в таблице; обычно выбирают наиболее простой для ввода потенциальный ключ, как правил, числовой.

Ключевое поле таблицы в СУБД Access – это первичный ключ таблицы.

Виды реляционных отношений

    один-к-одному;

Каждому значению первичного ключа в главной таблице соответствует одна или не одной записи в подчиненной таблице.

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

    один-ко-многим;

Каждому значению первичного ключа в главной таблице соответствует одна, несколько или ни одной записи в подчиненной таблице.

Отношение «один-ко-многим» является наиболее часто используемым типом связи между таблицами.

    многие-ко-многим.

При отношении «многие-ко-многим» одной записи в таблице A могут соответствовать несколько записей в таблице B, а одной записи в таблице B несколько записей в таблице A. Отношение «многие-ко-многим» представляет собой два отношения «один-ко-многим» с третьей таблицей.

Организация межтабличных связей

    один-к-одному – таблицы, связываются по их первичным ключам (первичные ключи обеих таблиц устанавливают одинаковыми);

    один-ко-многим –главная таблица (один) связывается по первичному ключу с подчиненной таблицей (многие) по внешнему ключу (это первичный ключ главной таблицы, вставленный в подчиненную таблицу)

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

Пример организации БД

Условия целостности данных

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

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

Виды моделей данных БД

Модели организации данных. Сетевые, реляционные, иерархические модели.

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

Модель данных - это совокупность структур данных и операций их обработки. Рассмотрим три основных типа моделей данных: иерархическую, сетевую и реляционную.

Виды моделей данных БД

Иерархическую модель БД изображают в виде дерева. Элементы дерева вершины представляют совокупность данных, например логические записи.

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

К основным понятиям иерархической структуры относятся уровень, узел и связь. Узел - это совокупность атрибутов данных, описывающих некоторый объект. На схеме иерархического дерева узлы представляются вершинами графа. Каждый узел на более низком уровне связан только с одним узлом, находящимся на более высоком уровне. Иерархическое дерево имеет только одну вершину, не подчиненную никакой другой вершине и находящуюся на самом верхнем - первом уровне. Зависимые (подчиненные) узлы находятся на втором, третьем и т. д. уровнях. Количество деревьев в базе данных определяется числом корневых записей. К каждой записи базы данных существует только один иерархический путь от корневой записи.

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

В сетевой структуре при тех же основных понятиях (уровень, узел, связь) каждый элемент может быть связан с любым другим элементом.

Реляционная модель БД представляет объекты и взаимосвязи между ними в виде таблиц, а все операции над данными сводятся к операциям над этими таблицами. На этой модели базируются практически все современные СУБД. Эта модель более понятна, "прозрачна" для конечного пользователя организации данных.

Реляционная модель данных объекты и связи между ними представляет в виде таблиц, при этом связи тоже рассматриваются как объекты. Все строки, составляющие таблицу в реляционной базе данных, должны иметь первичный ключ. Все современные средства СУБД поддерживают реляционную модель данных.

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

Каждая реляционная таблица представляет собой двумерный массив и обладает следующими свойствами:

1. Каждый элемент таблицы соответствует одному элементу данных.

2. Все столбцы в таблице однородные, т.е. все элементы в столбце имеют одинаковый тип и длину.

3. Каждый столбец имеет уникальное имя.

4. Одинаковые строки в таблице отсутствуют;

5. Порядок следования строк и столбцов может быть произвольным.

Известны три типа моделей описания баз данных (рис.3.7):

ü иерархическая;

ü сетевая;

ü реляционная.

Основное различие между ними состоит в характере описания взаимосвязей и взаимодействия между объектами и атрибутами базы данных.

Рис 3.7. Основные типы моделей данных

1. Иерархическую модель БД изображают в виде дерева. Каждой вершине соответствует множество экземпляров записей, составляющих логический файл. Вершины расположены по уровням и связаны между собой отношениями подчиненностями. Одна-единственная вершина верхнего уровня является корневой (рис.3.8).

Достоинством модели является:

· простота ее построения;

· легкость понимания сути принципа иерархии;

· наличие промышленных СУБД, поддерживающих данную модель.

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

Рис. 3.8. Иерархическая модель данных

2. Сетевая модель описывает элементарные данные и отношения между ними в виде ориентированной сети. Это такие отношения между объектами, когда каждый порожденный элемент имеет более одного исходного и может быть связан с любым другим элементом структуры рис.3.9).

Сетевые структуры могут быть многоуровневыми, иметь разную степень сложности.

База данных, описываемая сетевой моделью, состоит из областей (области - из записей, а записи - из полей).

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

Рис.3.9. Сетевая модель данных

3. Реляционная модель БД представляет объекты и взаимосвязи между ними в виде таблиц, а все операции над данными сводятся к операциям над этими таблицами. На этой модели базируются практически все современные СУБД.

Реляционная модель имеет в своей основе понятие «отношения», и ее данные формируются в виде таблиц. Отношение - это двумерная таблица, имеющая свое название, в которой минимальным объектом действий, сохраняющим ее структуру, является строка таблицы (кортеж), состоящая из ячеек таблицы - полей.



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

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

Рис.3.10 Реляционная модель данных

В зависимости от содержания отношения реляционные базы данных бывают:

ü объектными, в которых хранятся данные о каком-либо одном объекте, экземпляре сущности. В них один из атрибутов однозначно определяет объект и называется ключом отношения, или первичным атрибутом. Остальные атрибуты функционально зависят от этого ключа;

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



Достоинства реляционной модели:

· простота построения;

· доступность понимания;

· возможность эксплуатации базы данных без знания методов и способов ее построения;

· независимость данных;

· гибкость структуры и др.

Недостатки реляционной модели:

· низкая производительность по сравнению с иерархической и сетевой моделями;

· сложность программного обеспечения;

· избыточность элементов.

В последние годы все большее признание и развитие получают объектно-ориентированные базы данных (ООБД).

Принципиальное отличие реляционных и объектно-ориентированных баз данных заключается в следующем : в ООБД модель данных более близка сущностям реального мира, объекты можно сохранить и использовать непосредственно, не раскладывая их по таблицам, типы данных определяются разработчиком и не ограничены набором предопределенных типов.

Традиционными областями применения объектных СУБД являются системы автоматизированного проектирования (САПР), моделирование, мультимедиа.

К объектным СУБД можно отнести СУБД ONTOS - одного из лидеров направляя ООБД, Jasmine. ODB-Jupiter - первый российский продукт такого рода, ORACLE 8.0.

Базы знаний - это специальные компьютерные системы, основанные на обобщении, анализе и оценке знаний высококвалифицированных специалистов-экспертов.

Например, «КонсультантПлюс», «Гарант Сервис».

Основными элементами информационной технологии, используемой в БЗ являются:

Интерфейс пользователя,

База знаний,

Интерпретатор,

Модуль создания системы,

Интерфейс используется для ввода запросов и команд в экспертную систему и получает выходную информацию из нее.

Выходная информация включает не только само решение, но необходимые объяснения, которые могут быть двух видов:

1) по запросам, т.е. те, которые пользователь может получить в любой момент;

2) которые пользователь получает уже при выдаче решения, т.е. то, каким образом получается решение (например, каким образом влияет на прибыль и издержки выбранная цена и т.д.).

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

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

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

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

Контрольные вопросы

1. В чем различие между информацией и данными?

2. Как выражается адекватность информации?

3. Назовите признаки классификации экономической информации.

4. Что такое структура информации?

5. Чем показатель отличается от реквизита?

6. Укажите основные свойства информации.

7. Что входит в состав информационного обеспечения?

8. Чем внемашинное информационное обеспечение отличается от внуримашинного?

9. Какие бывают классификаторы и с какой целью разрабатываются классификаторы?

10. Каково назначение штрихового кодирования? В чем его особенности?

11. Определите понятия «классификаторы» и «коды».

12. Чем автоматизированные банки данных отличаются от баз знаний?

13. Что входит в состав автоматизированных банков данных?

14. Чем клиент-серверная архитектура отличается от файл-серверной?

15. Укажите основные характеристики СУБД.

16. Что подразумевает обеспечение целостности данных?

17. Охарактеризуйте типы моделей описания баз данных.

4. информационные технологии в управлении и экономике