Базу данных (БД) можно определить как унифицированную совокупность данных, совместно используемую различными задачами в рамках некоторой единой автоматизированной информационной системы (ИС).
Теория управления базами данных как самостоятельная дисциплина начала развиваться приблизительно с начала 50-х годов двадцатого столетия. За это время в ней сложилась определенная система фундаментальных понятий. Приведем некоторые из них.
Предметной областью принято называть часть реального мира, подлежащую изучению с целью организации управления в этой сфере и последующей автоматизации процесса управления. В рамках данной книги для нас в первую очередь представляют интерес предметные области, так или иначе связанные со сферой экономики и финансов.
Объектом называется элемент информационной системы, сведения о котором хранятся в базе данных. Иногда объект также называют сущностью.
Классом объектов называют их совокупность, обладающую одинаковым набором свойств.
Атрибут — это информационное отображение свойств объекта. Каждый объект характеризуется набором атрибутов.
Ключевым элементом данных называются такой атрибут (или группа атрибутов), который позволяет определить значения других элементов данных.
Запись данных — это совокупность значений связанных элементов данных.
Первичный ключ — это атрибут (или группа атрибутов), который уникальным образом идентифицируют каждый экземпляр объекта (запись). Вторичным ключом называется атрибут (или группа атрибутов), значение которого может повторяться для нескольких записей (экземпляров объекта). Прежде всего, вторичные ключи используются в операциях поиска записей.
Процедуры хранения данных в базе должны подчиняться некоторым общим принципам, среди которых в первую очередь следует выделить:
• целостность и непротиворечивость данных, под которыми понимается как физическая сохранность данных, так и предотвращение неверного использования данных, поддержка допустимых сочетаний их значений, защита от структурных искажений и несанкционированного доступа;
• минимальная избыточность данных обозначает, что любой элемент данных должен храниться в базе в единственном виде, что позволяет избежать необходимости дублирования операций, производимых с ним.
Программное обеспечение, осуществляющее операции над базами данных, получило название СУБД — система управления базами данных.
Современные СУБД являются объектно-ориентированными и реляционными. Основной единицей является объект, имеющий свойства, и связи между объектами. СУБД используют несколько моделей данных: иерархическую и сетевую (с 60-х годов) и реляционную (с 70-х). Основное различие данных моделей в представлении взаимосвязей между объектами.
Иерархическая модель данных строится по принципу иерархии объектов, то есть один тип объекта является главным, все нижележащие - подчиненными. Устанавливается связь «один ко многим», то есть для некоторого главного типа существует несколько подчиненных типов объектов. Иначе, главный тип именуется исходным типом, а подчиненные - порожденными. У подчиненных типов могут быть в свою очередь подчиненные типы. Наивысший в иерархии узел (совокупность атрибутов) называют корневым.
Сетевая модель данных строится по принципу «главный и подчиненный тип одновременно», то есть любой тип данных одновременно может одновременно порождать несколько подчиненных типов (быть владельцем набора) и быть подчиненным для нескольких главных (быть членом набора).
Реляционная модель данных объекты и связи между ними представляются в виде таблиц, при этом связи тоже рассматриваются как объекты. Все строки, составляющие таблицу в реляционной базе данных должны иметь первичный ключ. Все современные средства СУБД поддерживают реляционную модель данных.
Кратко остановимся на конкретных программных продуктах, относящихся к классу СУБД. На самом общем уровне все СУБД можно разделить:
• на профессиональные, или промышленные;
• персональные (настольные).
Профессиональные (промышленные) СУБД представляют собой программную основу для разработки автоматизированных систем управления крупными экономическими объектами. На их базе создаются комплексы управления и обработки информации крупных предприятий, банков или даже целых отраслей. Первостепенными условиями, которым должны удовлетворять профессиональные СУБД, являются:
• возможность организации совместной параллельной работы большого количества пользователей;
• масштабируемость, то есть возможность роста системы пропорционально расширению управляемого объекта; переносимость на различные аппаратные и программные плат формы;
• устойчивость по отношению к сбоям различного рода, в том числе наличие многоуровневой системы резервирования хранимой информации;
• обеспечение безопасности хранимых данных и развитой структурированной системы доступа к ним.
Промышленные СУБД к настоящему моменту имеют уже достаточно богатую историю развития. В частности, можно отметить, что в конце 70-х — начале 80-х годов в автоматизированных системах, построенных на базе больших вычислительных машин, активно использовалась СУБД Adabas. В настоящее время характерными представителями профессиональных СУБД являются такие программные продукты, как Oracle, DB2, Sybase, Informix, Progress.
Персональные системы управления данными — это программное обеспечение, ориентированное на решение задач локального пользователя или компактной группы пользователей и предназначенное для использования на микроЭВМ (персональном компьютере). Это объясняет и их второе название — настольные. Определяющими характеристиками настольных систем являются:
• относительная простота эксплуатации, позволяющая создавать на их основе работоспособные приложения как «продвинутым» пользователям, так и тем, чья квалификация невысока;
• относительно ограниченные требования к аппаратным ресурсам.
Несмотря на неизбежные различия, обусловливавшиеся замыслами разработчиков, все перечисленные системы в ходе своей эволюции приобрели ряд общих конструктивных черт, среди которых, прежде всего, могут быть названы:
• наличие визуального интерфейса, автоматизирующего процесс создания средств, манипуляции данными, экранных
форм, шаблонов отчетов, запросов и т. п.;
• наличие инструментов создания объектов базы данных в режиме диалога.
• наличие развитого инструментария создания программных расширений в рамках единой среды СУБД: язык разработки приложений.
• встроенная поддержка универсальных языков управления данными.
В последние годы наметилась устойчивая тенденция к стиранию четких граней между настольными и профессиональными системами. Последнее, в первую очередь, объясняется тем, что разработчики в стремлении максимально расширить потенциальный рынок для своих продуктов постоянно расширяют набор их функциональных характеристик.
К современным системам управления базами данных предъявляются следующие требования:
Обеспечение возможности быстрой разработки прикладной программы
В СУБД должны быть средства об объектно-ориентированного программирования, позволяющие формировать компоненты проекта, которые можно затем многократно использовать, на основе создания объектов, классов и подклассов. Кроме тою, объекты могут быть созданы с помощью визуальных средств и многократно использоваться в любое время.
Обеспечение полного набора средств для управления событиями
В Windows число событий, к которым пользователь может обращаться, значительно увеличилось, и, следовательно, обработка событий стала более сложной. Система должна обеспечивать полностью управляемую событиями модель и иметь полный доступ к механизму стандартных событий, основанных на функционировании системы Windows.
Обеспечение набора инструментальных средств
Система должна иметь широкие возможности по интеграции систем хранения данных и доступа к серверам данных с применением технологии ODBC. Должен быть полностью реализован встроенный язык SQL, реализована возможность обновления данных через редактирование курсоров, встроен механизм обеспечения транзакций, возможность обращения к серверу на том диалекте SQL, который поддерживает сервер.
Access специально спроектирован для создания многопользовательских приложений, где файлы баз данных являются разделяемыми ресурсами сети. В Access реализована надежная система защиты от несанкционированного доступа к файлам баз данных.
Access имеет собственную, уникальную структуру для хранения связанных таблиц, форм, отчетов, запросов, макросов и модулей VBA в одном файле.
Access имеет возможность импорта и экспорта данных в большинство распространенных форматов баз данных, электронных таблиц и текстовых файлов. Access также позволяет
Microsoft Access
Microsoft Access является мощной и высокопроизводительной 32-разрядной системой управления базами данных (СУБД). Она отвечает всем требованиям, предъявляемым к современным СУБД:
*/ Обеспечение быстрой разработки прикладной программы •S Обеспечение полного набора средств для управления событиями
•S Обеспечение набора инструментальных средств •S Обеспечение интеграции в семейство Microsoft Office •S Сетевая поддержка
Пакет Access предназначен для разработки настольных (desktop) баз данных и создания приложений баз данных архитектуры клиент/сервер, работающих под управлением операционной системы Windows. Как компонент, входящий в MS Office, Access имеет усовершенствованный интерфейс пользователя, что обеспечивает его совместимость с Excel и Word. Access предлагает множество новых, относящихся к Internet возможностей для создания HTML-документов, используемых World Wide Web. Усовершенствованный механизм базы данных Jet 3.5 ускоряет выполнение запросов между базами данных клиент/сервер с ODBCDirect.
База данных Access - это совокупность структурированных и взаимосвязанных данных и методов, обеспечивающих добавление, изменение, выборку и отображение данных. Это определение подчеркивает важное отличие между Access и другими СУБД. Даже системы клиент/сервер (например, Microsoft SQL Server), позволяющие хранить все таблицы в одном файле базы данных, не могут включать формы и отчеты в файл базы данных.
В состав любой базы данных Access входят следующие элементы:
Таблицы. В базах данных Access информация хранится в виде двумерных таблиц. База данных может содержать до 32768 объектов (комбинаций таблиц, форм, отчетов и т.д.), причем могут быть открыты одновременно 1024 таблицы (если позволяют системные ресурсы).
Запросы. При помощи запросов можно произвести выборку данных, соответствующих некоторому критерию. Выборка данных может производиться одновременно из 16 таблиц. В запрос можно включить до 255 полей (столбцов). Условие отбора определяет то, какие данные будут выбраны из таблицы в результате запроса.
Формы. Формы позволяют отображать данные, содержащиеся в таблицах или запросах в более удобном для восприятия виде. При помощи форм можно добавлять в таблицы новые данные, а также изменять и удалять существующие. Форма может содержать рисунки, графики и другие внедренные объекты.
Отчеты. Отчеты предназначены для печати данных, содержащихся в таблицах и запросах, в красиво оформленном виде.
Макросы. Использование макросов в приложениях Access позволяет автоматизировать повторяющиеся операции.
Модули. Модули содержат Access VBA код, используемый для написания процедур обработки событий, таких как нажатие на кнопку в форме или отчете, для создания функций настройки, используемых в формах, отчетах и запросах, для автоматического выполнения операций над объектами базы данных и программного управления операциями, которыми нельзя управлять с помощью макросов.
ЛЕКЦИИ
В зависимости от предметной области информационные системы могут весьма значительно различаться по своим функциям, архитектуре, реализации. Однако можно выделить ряд свойств, которые являются общими.
- □ Информационные системы предназначены для сбора, хранения и обработки информации, поэтому в основе любой из них лежит среда хранения и доступа к данным.
- □ Информационные системы ориентированы на конечного пользователя, не обладающего высокой квалификацией в области вычислительной техники. Поэтому клиентские приложения информационной системы должны обладать простым, удобным, легко осваиваемым интерфейсом, который предоставляет конечному пользователю все необходимые для работы функции и в то же вpeмя не дает ему возможность выполнять какие-либо лишние действия.
Таким образом, при разработке информационной системы приходится решать две основные задачи:
- разработка базы данных, предназначенной для хранения информации;
- разработка графического интерфейса пользователя клиентских приложений.