Режим работы с базами данных
Кафедра экономической кибернетики
Контрольная работа
по дисциплине:
«Системы обработки экономической информации»
Режим работы с базами данных
Содержание контрольной работы
1.Организация данных
2.Системы управления базами данных
3.Режим работы с базами данных
Список использованной литературы
1.Организация данных
Организация данных во внутримашинной сфере характеризуется на двух уровнях — логическом и физическом. Физическая организация данных определяет способ размещения данных непосредственно на машинном носителе. В современных прикладных программных средствах этот уровень организации обеспечивается автоматически без вмешательства пользователя. Пользователь, как правило, оперирует в прикладных программах и универсальных программных средствах представлениями о логической организации данных.
1.1 Логическая организация данных и файловая модель
Логическая организация данных на машинном носителе зависит от используемых программных средств организации и ведения данных во внутрнмашинной сфере. Метод логической организации данных определяется используемыми типом структур данных и видом модели, которая поддерживается программным средством.
Модель данных — это совокупность взаимосвязанных структур данных и операций над этими структурами. Вид модели и используемые в ней типы структур данных отражают концепцию организации и обработки данных, используемую в системах управления базами данных (далее – СУБД) поддерживающей модель, или в языке системы программирования, на котором создается прикладная программа обработки данных.
Важно отметить, что для размещения одной и той же информации во внутримашиниой сфере могут быть использованы различные структуры и модели данных. Их выбор возлагается на пользователя, создающего информационную базу, и зависит от многих факторов, в том числе от имеющегося технического и программного обеспечения, определяется сложностью автоматизируемых задач и объемом информации.
В файловых системах реализуется модель типа плоский файл. При такой модели внутримашинная информационная база (ИБ) представляет собой совокупность не связанных между собой файлов (независимых) из однотипных записей с линейной (одноуровневой) структурой.
Основные типы структур данных файловой модели — поле, запись, файл.
Запись является основной структурной единицей обработки данных и единицей обмена между оперативной и внешней памятью.
Поле - это элементарная единица логической организации данных, которая соответствует отдельной, неделимой единице информации — реквизиту.
Запись — это совокупность полей, соответствующих логически связанным реквизитам. Структура записи определяется составом и последовательностью входящих в нее полей, каждое из которых содержит элементарное данное.
Файл — это множество одинаковых по структуре экземпляров записей со значениями в отдельных полях. Экземпляр записи представляет собой реализацию записи, содержащую конкретные значения полей. Структура записи файла - линейная, то есть поля имеют единственное значение и отсутствуют групповые данные. Каждый экземпляр записи однозначно идентифицируется уникальным ключом записи. В общем случае ключи записи бывают двух видов: первичный (уникальный) и вторичный ключ.
Первичный ключ (ПК) — это одно или несколько полей, однозначно идентифицирующих запись. Если первичный ключ состоит из одного поля, он называется простым, если из нескольких полей — составным ключом.
Вторичный ключ (ВК), в отличие от первичного, — это такое поле, значение которого может повторяться в нескольких записях файла, то есть он не является уникальным. Если по значению первичного ключа может быть найден один единственный экземпляр записи, то по вторичному — несколько.
Названные структуры данных используются и в ряде СУБД, что делает эти понятия в определенном смысле универсальными.
Индексирование. Средством эффективного доступа по ключу к записям файла является индексирование. При индексировании создается дополнительный индексный файл, который содержит в упорядоченном виде все значения ключа файла данных. Для каждого значения ключа в индексном файле содержится указатель на соответствующую запись файла данных. При наличии индексного файла, размеры которого меньше основного файла, по заданному ключу быстро отыскивается запись. С помощью указателя на запись в файле данных осуществляется прямой доступ к этой записи. Индексирование может производиться не только по первичному, но и по вторичному ключу.
Описание логической организации данных файловой модели. При описании логической организации данных каждому файлу присваивается уникальное имя и дается описание стриктуры его записей. Описание структуры записей включает перечень входящих в нее полей и их порядок внутри записи.
Для каждого поля задается сокращенное обозначение — имя поля (идентификатор поля внутри записи), формат поля — тип хранимого данного, длина поля и точность числовых данных. Для полей, выполняющих роль уникального (первичного) ключа записи, указывается признак ключа.
Структуру файла при описании внутримашинной ИБ можно представить в виде таблицы, где отмечаются первичные и вторичные ключи.
1.2 Сетевые и иерархические модели данных
Более сложными моделями данных внутриманшнной сферы (по сравнению с файловой) являются сетевые и иерархические модели, которые поддерживаются в системе управления базами данных (СУБД) соответствующего типа. Тип модели данных, поддерживаемой СУБД на машинном носителе, является одним из важнейших признаков классификации СУБД.
Сетевая или иерархическая модель данных представляет соответствующий метод логической организации базы данных в СУБД. Такая модель является совокупностью взаимосвязанных объектов. Связь двух объектов отражает их подчиненность. Объектом в сетевой или иерархической модели является основной тип структур данных из тех, которые поддерживаются СУБД. В различных СУБД этот тип структур данных может по-разному быть определен и назван (тип записи, файл, сегмент).
К типовым структурам данных относятся: элемент данных, агрегат данных, запись, база данных и т. д.
Элемент данных — это минимальная именованная структурная единица данных (аналог поля в файловых системах).
Агрегат данных — это именованное подмножество элементов данных или других агрегатов внутри записи. В агрегатах допускается множественный элемент, который содержит несколько значений элемента в одном экземпляре агрегата. Запись в общем случае является составным агрегатом, который не входит в состав других агрегатов. Она характеризуется структурой взаимосвязей ее элементов и агрегатов. Таким образом, структура записи может иметь иерархический характер. Все множество экземпляров записи одинаковой структуры образует тип записи. Запись конкретного типа является объектом в модели данных.
Модель данных может включать несколько типов записей (объектов). Между объектами модели данных устанавливаются связи. Совокупность взаимосвязанных конкретных объектов модели для некоторой предметной области образует базу данных.
Связи между двумя типами записей (объектами модели) определяются групповыми отношениями между их экземплярами. Групповое отношение (набор) — это строго иерархическое отношение между записями двух типов: главной записью набора и подчиненными записями набора.
В строго иерархических моделях, как правило, любой объект (запись, сегмент) может подчиняться только одному объекту вышестоящего уровня. В сетевых — любой объект (запись, файл) может быть подчинен нескольким объектам.
В иерархических моделях непосредственный доступ по ключу, как правило, возможен только к объекту самого высокого уровня, который не подчинен другим объектам. К другим объектам доступ осуществляется по связям от объекта на вершине модели. В сетевых моделях непосредственный доступ по ключу может обеспечиваться к любому объекту независимо от уровня, на котором он находится в модели. Возможен также доступ по связям от любой точки доступа.
Структура объекта (записи, файла) в сетевых моделях чаще бывает линейной и реже имеет иерархическую структуру. Структуры данных более низкого уровня также могут иметь свою специфику и названия. Например, атрибут — аналог элемента данных. Объект линейной структуры состоит только из простых и ключевых атрибутов. Структура объекта (записи, сегмента) в иерархических моделях может быть иерархической или линейной.
Сетевые модели данных по сравнению с иерархическими являются более универсальным средством отображения во внутримашинной сфере структуры информации для разных предметных областей. Взаимосвязи данных большинства предметных областей имеют сетевой характер, что ограничивает использование СУБД с иерархической моделью данных. Сетевые модели позволяют отображать также иерархические взаимосвязи данных. Достоинством сетевых моделей является отсутствие дублирования данных в различных элементах модели. Кроме того, технология работы с сетевыми моделями является удобной для пользователя, так как доступ к данным практически не имеет ограничений и возможен непосредственно к объекту любого уровня. Допустимы всевозможные запросы.
1.3 Реляционная модель данных
Реляционные модели данных отличаются от рассмотренных выше сетевых и иерархических простотой структур данных, удобным для пользователя табличным представлением и доступом к данным. Реляционная модель данных является совокупностью простейших двумерных таблиц — отношений (объектов модели). Связи между двумя логически связанными таблицами в реляционной модели устанавливаются по равенству значений одинаковых атрибутов таблиц – отношений.
Таблица-отношение является универсальным объектом реляционных моделей. Это обеспечивает возможность унификации обработки данных в различных СУБД, поддерживающих реляционную модель. Операции обработки реляционных моделей основаны на использовании универсального аппарата алгебры отношений и реляционного исчисления.
Таблица является основным типом структуры данных (объектом) реляционной модели. Структура таблицы определяется совокупностью столбцов. В каждой строке таблицы содержится по одному значению в соответствующем столбце. В таблице не может быть двух одинаковых строк. Общее число строк не ограничено.
Столбец соответствует некоторому элементу данных — атрибуту, который является простейшей структурой данных. В таблице не могут быть определены множественные элементы, группа или повторяющаяся группа, как в рассмотренных выше сетевых и иерархических моделях. Каждый столбец таблицы должен иметь имя соответствующего элемента данных (атрибута). Один или несколько атрибутов, значения которых однозначно идентифицируют строку таблицы, являются ключом таблицы.
В реляционном подходе к построению баз данных используется терминология теории отношений. Простейшая двумерная таблица определяется как отношение. Столбец таблицы со значениями соответствующего атрибута называется доменом, а строки со значениями разных атрибутов — кортежем.
2. Системы управления базами данных
2.1 Определения и основные понятия
Система управления базами данных (СУБД) является универсальным программным средством, предназначенным для создания и ведения (обслуживания) баз данных (БД) на внешних запоминающих устройствах, а также доступа к данным и их обработки. СУБД поддерживают один из возможных типов моделей данных — сетевую, иерархическую пли реляционную, которые являются одним из важнейших признаков классификации СУБД. СУБД обеспечивают многоцелевой характер использования базы данных, защиту и восстановление данных. Наличие развитых диалоговых средств и языка запросов высокого уровня делает СУБД удобным средством для конечного пользователя.
Основными средствами СУБД являются:
средства задания (описания) структуры базы данных;
средства конструирования экранных форм, предназначенных для ввода данных, просмотра и их обработки в диалоговом режиме;
средства создания запросов для выборки данных при заданных условиях, а также выполнения операций по их обработке;
средства создания отчетов из базы данных для вывода на печать результатов обработки в удобном для пользователя виде;
языковые средства — макросы, встроенный алгоритмический язык (Dbase, Visual Basic или другой), язык запросов (QBE — Query By Example, SQL) и т.п., которые используются для реализации нестандартных алгоритмов обработки данных, а также процедур обработки событий в задачах пользователя;
средства создания приложений пользователя (генераторы приложений, средства создания меню и панелей управления приложениями), позволяющие объединить различные операции работы с базой данных в единый технологический процесс.
База данных — это совокупность данных, организованных на машинном носителе средствами СУБД. В базе данных обеспечивается интеграция логически связанных данных при минимальном дублировании хранимых данных. БД включает данные, отражающие некоторую логическую модель взаимосвязанных информационных объектов, представляющих конкретную предметную область. База данных организуется в соответствии с моделью и структурами данных, которые поддерживаются в СУБД.
СУБД в многопользовательских системах. База данных, как правило, содержит данные, необходимые многим пользователям. Получение одновременного доступа нескольких пользователей к общей базе данных возможно при установке СУБД в локальной сети персональных компьютеров и создании многопользовательской базы данных.
В сети СУБД следит за разграничением доступа разных пользователей к общей базе данных и обеспечивает защиту данных при одновременной работе пользователей с общими данными. Автоматически обеспечивается защита данных от одновременной их корректировки несколькими пользователями-клиентами. В сети с файловым сервером база данных может размещаться на сервере. При этом СУБД загружается и осуществляет обработку данных базы на рабочих станциях пользователей. Концепция файлового сервера в локальной сети обеспечивается рядом сетевых операционных систем.
В сети, поддерживающей концепцию «клиент-сервер», используется сервер баз данных, который располагается на мощной машине, выполняет обработку данных, размещенных на сервере, и отвечает за их целостность и сохранность. Для управления базой данных на сервере используется язык структурированных запросов SQL (Structured Queries Language). На рабочих станциях-клиентах работает СУБД-клиент. Пользователи могут взаимодействовать не только со своими локальными базами, но и с данными, расположенными на сервере. СУБД-клиент, в которой поддерживается SQL, в полном объеме может посылать на сервер запросы SQL, получать необходимые данные, а также посылать обновленные данные. При этом с общей базой данных могут работать СУБД разного типа, установленные на рабочих станциях, если в них поддерживается SQL. Подключение из СУБД к серверам баз данных SQL может быть осуществлено с помощью драйверов ODBC. ODBC (Open Database Connectivity, открытый стандарт доступа к базам данных), поддерживает стандартный протокол для серверов баз данных SQL.
2.2 Свойства СУБД и технология использования
К основным свойствам СУБД и базы данных можно отнести:
отсутствие дублирования данных в различных объектах модели, обеспечивающее однократный ввод данных и простоту их корректировки;
непротиворечивость данных;
целостность БД;
возможность многоаспектного доступа;
всевозможные выборки данных и их использование различными задачами и приложениями пользователя;
защита и восстановление данных при аварийных ситуациях, аппаратных и программных сбоях, ошибках пользователя;
защита данных от несанкционированного доступа средствами разграничения доступа для различных пользователей;
возможность модификации структуры базы данных без повторной загрузки данных;
обеспечение независимости программ от данных, позволяющей сохранить программы при модификации структуры базы данных;
реорганизация размещения данных базы на машинном носителе для улучшения объемно-временных характеристик БД;
наличие языка запросов высокого уровня, ориентированного на конечного пользователя, который обеспечивает вывод информации из базы данных по любому запросу и предоставление ее в виде соответствующих отчетных форм, удобных для пользователя.
СУБД является основой создания практических приложений пользователя для различных предметных областей.
Критерии выбора СУБД пользователем. Выбор СУБД для практических приложений пользователем определяется многими факторами, к которым относятся:
имеющееся техническое и базовое программное обеспечение, их конфигурация, оперативная и дисковая память;
потребности разрабатываемых приложений пользователя;
тип поддерживаемой модели данных, специфика предметной области, топология информационно-логической модели;
требования к производительности при обработке данных;
наличие в СУБД необходимых функциональных средств;
наличие русифицированной версии СУБД;
уровень квалификации пользователей и наличие в СУБД диалоговых средств разработки и работ с БД.
Установка СУБД. СУБД является программным продуктом, поставляемым в виде пакета прикладных программ, который должен быть установлен (инсталлирован) на компьютер с учетом его конфигурации, ресурсов и операционной системы, а также требований к набору функций.
Процесс поэтапного внедрения. После установки СУБД можно осуществлять создание БД, в том числе задавать структуру БД, производить ввод данных, а также выполнять любые действия, предусмотренные функциональными возможностями СУБД. Следует заметить, что современные СУБД для ПК обладают достаточной гибкостью. Это позволяет на самых ранних этапах разработки приложений пользователя приступать к созданию отдельных частей БД. Такая БД по мере углубления разработки может легко расширяться и модифицироваться. Таким образом, облегчается ускоренное освоение персоналом технологии работы с БД, изучение возможностей СУБД и поэтапное внедрение.
Разработка структуры базы данных. Разработка приложений на основе СУБД предполагает подготовку решений по структуре БД. Эти решения непосредственно связаны с внемашинной сферой — с описанием внемашинной ИБ, ее документов, содержащих необходимую информацию, а также с постановкой и алгоритмизацией задач по обработке этой информации.
На начальном этапе разработки структуры БД целесообразно построение информационно-логической модели, отражающей логическую структуру информации предметной области. Такая модель, отвечающая требованиям нормализации данных, является основой создания реляционных баз данных.
Создание базы данных средствами СУБД. В соответствии с разработанной структурой базы данных осуществляется ее создание средствами СУБД на машинном носителе и ввод в эксплуатацию. Для обеспечения процессов создания БД и ее эксплуатации необходимо знание возможностей инструментальных средств СУБД. При этом следует руководствоваться рекомендациями по технологии использования средств СУБД. Такая технология должна определять все необходимые процессы, включая первоначальный ввод, загрузку БД и контроль данных, выполнение операций по внесению изменений, реализацию запросов для получения нужных справок, восстановление БД и т. п. Одним из важнейших этапов этой технологии является подготовка экранных форм ввода-вывода для загрузки информации с документов внемашинной сферы в базу данных, корректировки данных и их просмотра.
Обработка данных средствами СУБД. Добавление, удаление, изменение и выборка данных производится при помощи языка запросов, встроенного алгоритмического языка и других средств СУБД. Реализация запросов обеспечивается диалоговой системой команд с меню или запросами по примеру QBE (Query By Example). В первом случае отдельный запрос выполняется одной или несколькими командами языка СУБД. Последовательность команд языка СУБД образует программу — командный файл (СУБД Dbase). Во втором — для выполнения запроса пользователь выбирает последовательно один или несколько пунктов меню или указывает в запросе пример (образец), по которому составляется запрос, а также при необходимости условия выбора и операции вычисления, которые необходимо выполнять с данными (СУБД Paradox, Access). Последовательность команд меню и запросов может быть заполнена в программе-макросе и в дальнейшем выполнена так же, как командный файл.
СУБД может иметь включающий или базовый язык программирования. В СУБД с включающим языком используется один из универсальных алгоритмических языков (С, Pascal и т. п.). Прикладная программа, написанная на включающем языке, может инициировать команды СУБД. В СУБД с базовым языком применяется собственный алгоритмический язык, позволяющий кроме операций манипулирования данными выполнять различные вычисления и обработку данных. Стандартным реляционным языком запросов является язык структурированных запросов SQL (Structured Queries Language).
2.3 История, тенденции развития и классификация СУБД
Наибольшую популярность среди настольных систем, функционирующих в среде DOS, завоевали реляционные СУБД Dbase (компания Ashton-Tate), Paradox (Borland), R:base (Mierorim), FoxPro (Fox Software), Clipper 5.0 (Nantucket), db_VISTA (Raima) с сетевой моделью данных.
В течение продолжительного периода времени широко использовались СУБД, совместимые со стандартом Xbase. Однако доля Xbase на рынке настольных СУБД сокращается. СУБД Dbase, FoxBase, FoxPro являются представителями этого семейства. СУБД Dbase имеют простой командный язык манипулирования данными и пользовательский интерфейс типа меню, средства генерации отчетов и экранных форм. Эта СУБД отличается хорошим быстродействием при выполнении запросов в небольших базах данных. В большинстве реляционных СУБД этого поколения, работающих в среде DOS, программы на базовом языке выполняются в режиме интерпретации, то есть заранее не преобразовываются в машинный код, что снижает их производительность.
Система db_VISTA, с включающим универсальным языком С, поддерживает сетевую модель. Она пользовалась популярностью среди профессиональных программистов. Областью ее применения, в частности, являются банковские информационные системы. К сетевым СУБД относится также AdabasD, которая предназначена для создания больших баз данных и может работать на разных платформах (техническая и программная среда).
Реляционная СУБД Paradox (версии 3.5, 4.0, 5.0) появилась на рынке в 1985г. Она отличается от семейства Xbase-продуктов запросами по образцу (QBE), генератором приложений на основе объектного подхода, настраиваемым меню пользователя, диалоговыми средствами и автоматическим формированием макросов, в которых можно запомнить все отлаженные пользователем процессы. В Paradox используется, кроме языка запросов QBE, базовый язык программирования PAL (Paradox Application Language) — язык для разработки приложений. Paradox, как и семейство Xbase, хранит свои объекты (таблицы, формы, отчеты, макросы) в отдельных файлах и обладает достаточной гибкостью, что позволяет модифицировать базу данных без перезагрузки данных. Обеспечивается создание сложных форм для нормализованных таблиц, через которые можно однократно вводить данные с внемашинных документов. Создание форм, запросов, отчетов, макросов легко выполняет пользователь-непрограммист. Для выполнения запроса в Paradox достаточно заполнить бланки запроса, которые на экране отображаются структурой таблицы базы данных.
К мощным реляционным СУБД профессионального класса относится PROGRESS (фирмы Progress Software Co., USA). Она имеет встроенный язык SQL и собственный язык 4GL, может работать на разнообразных программно-аппаратных платформах, поддерживает архитектуру клиент-сервер.
Перспективы развития архитектур СУБД связаны с развитием концепции обработки нетрадиционных данных и их интеграции, обмена данными из разных СУБД, многопользовательской технологии в локальных сетях.
С 1996 г. операционная система Windows 95 стала стандартом для настольных ПК. Для использования преимуществ этой операционной системы необходим переход к использованию 32-разрядных СУБД нижнего уровня. Наиболее известными и популярными СУБД такого типа являются: Access (Microsoft), Paradox 7 for Windows 95 and Windows NT (Borland) и Approach for Windows 95 (Lotus).
Относительно простой в изучении и использовании считается Approach for Windows 95, которая ориентирована на разработку несложных приложений. Более совершенными, обладающими мощным языком разработки приложений пользователя являются две первые из названных СУБД — Paradox и Access.
К общим свойствам СУБД Approach, Paradox и Access относятся:
графический многооконный интерфейс, позволяющий пользователю в диалоговом режиме создавать таблицы, формы, запросы, отчеты и макросы;
специальные средства, автоматизирующие работу, — многочисленные мастера (Wizards) в Access, ассистенты (Assistants) в Approach и эксперты (Experts) в Paradox;
возможность работы в локальном режиме или в режиме клиента на рабочей станции (Windows NT 3.51, Novell NetWare 4.1);
использование объектной технологии OLE2 для внедрения в базу данных разной природы (текстов, электронных таблиц, изображений и т. п.);
наличие собственного языка программирования.
Особенности СУБД Approach, Paradox, Access:
в Approach, в отличие от Paradox и Access, не обеспечивается полная поддержка языка запросов SQL, что ограничивает ее возможности в многопользовательских системах только просмотром данных;
в Access предусмотрена автоматическая генерация кода SQL при создании запроса пользователем;
в Approach язык для разработки приложений Lotus Script уступает по интеграционным возможностям и удобству работы объектноориентированным языкам (в Paradox — ObjectPAL, в Access — Visual Basic);
Visual Basic в Access является наиболее мощным языком программирования, которым обладает свойством автономности от СУБД и переносимости в другие приложения Microsoft Office, обеспечивая хорошую интеграцию данных;
в Access имеется Мастер анализа таблиц, с помощью которого можно выполнить нормализацию таблицы.
Одной из важнейших тенденции развития СУБД является разработка «универсальных» СУБД, способных интегрировать в базе традиционные и нетрадиционные данные — тексты, рисунки, звук и видео, страницы HTML и др. Это особенно актуально для Web. Имеются два подхода к построению таких СУБД; объектно-реляционный — совершенствование существующих реляционных СУБД и объектный.
Следует отметить, что современные реляционные СУБД уже способны интегрировать данные, однако нетрадиционные данные недоступны для внутренней обработки. «Универсальные» СУБД должны выполнять такую обработку. В таких системах не нужны разнородные программы, которыми сложно управлять. По пути создания объектно-реляционных СУБД пошли такие фирмы, как IBM, Informix и Oracle. В IBM разработана объектно-реляционная СУБД DB2 для ОС AIX и OS, 2. На начальном этапе фирма Oracle выпустила реляционный продукт Oracle Universal Server, интегрирующий СУБД Oracle 7.3 и специализированные серверы (Web, пространственных данных, текстов, видеосообщений), поддерживающие данные в разных хранилищах. В объекто-реляцпонной Oracle 8 должны быть интегрированы реляционные и нетрадиционные типы данных. Informix создала объектно-реляционную СУБД Universal Server.
Корпорация Microsoft сделала ставку
на объектно-ориентированный интерфейс
OLE
DB, который обеспечивает доступ к данным
Microsoft SQL Server (реляционная СУБД).
Фирма Sybase ориентирована на использование специализированных серверов, а интеграцию данных намеревается проводить другими средствами, то есть идет по пути создания объектно-реляционной СУБД (Adaptive-Server).
Информационные хранилища на базе СУБД с параллельной обработкой рассчитаны на многопроцессорные системы. Такие СУБД разделяются по типу архитектуры — без разделения ресурсов и с совместным использованием дискового пространства. В нервом случае за каждым из процессоров закреплены выделенные области памяти и диски, что дает хорошую скорость обработки. Во втором случае все процессоры делят между собой как оперативную память, так и место на диске.
Примерами СУБД без разделения ресурсов являются: DB2 (IBM), Informix Online Dynamic (Informix), Navigation Server (Sybase). СУБД с совместным использованием памяти является AdabasD версия 6.1 (Software AG). В СУБД Oracle 7.2 обеспечивается лучшая переносимость на различные платформы. Следует заметить, что выбор СУБД целесообразно осуществлять не только по типу архитектуры и качеству внешнего интерфейса, но прежде всего исходя из функциональных возможностей. Важными критериями выбора являются способность обработки сложных запросов (и скорость обработки), возможность переноса между платформами. Хорошей скоростью обработки сложных запросов отличается СУБД DB2 (IBM), а также DSA (Informix).
Классификация современных СУБД
К важным признакам классификации современных СУБД относятся:
среда функционирования — класс компьютеров и операционных систем (платформа), на которых работает СУБД, в том числе разрядность операционной системы, на которую ориентирована СУБД (16- или 32-разрядные);
тип поддерживаемой в СУБД модели данных — сетевая, иерархическая или реляционная;
возможности встроенного языка СУБД, его переносимость в другие приложения (SQL, Visual Basic, ObjectPAL и т. п.);
наличие развитых диалоговых средств конструирования (таблиц, форм, запросов, отчетов, макросов) и средств работы с базой данных;
возможность работы с нетрадиционными данными в корпоративных сетях (страницы HTML, сообщения электронной почты, изображения, звуковые файлы, видеоклипы и т. п.);
используемая концепция работы с нетрадиционными данными — объектно-реляционные, объектные;
уровень использования — локальная (для настольных систем), архитектура клиент-сервер, с параллельной обработкой данных (многопроцессорная);
использование объектной технологии OLE 2.0;
возможности интеграции данных из разных СУБД;
степень поддержки языка SQL и возможности работы с сервером баз данных (SQL-сервером);
наличие средств отчуждаемых приложений, позволяющих не проводить полной инсталляции СУБД для тиражируемых приложений пользователя.
3.Режим работы с базами данных
3.1 Основные возможности Access
СУБД Microsoft Access 7.0 является 32-разрядной системой управления реляционными базами данных нового поколения, работающей в среде Windows 95 и Windows NT. На его примере и рассмотрим режим работы с базами данных
В СУБД Access поддерживается реляционная модель данных.
В СУБД Access процесс создания реляционной базы данных включает создание схемы данных. Схема данных наглядно отображает таблицы и связи между ними, а также обеспечивает использование связей при обработке данных и целостность базы данных. Схема данных олицетворяет неразрывную связь внемашинного проектирования базы данных с этапом ее создания.
СУБД Access ориентирована на работу с объектами, к которым относятся таблицы базы данных, формы, запросы, отчеты, макросы и модули. Для типовых процессов обработки данных — ввода, просмотра, обновления, поиска по заданным критериям, получения отчетов — Access позволяет конструировать в диалоговом режиме такие объекты, как формы, запросы и отчеты. Эти объекты состоят из графических элементов, называемых элементами управления. Основные элементы управления служат для связи объектов с записями таблиц, являющихся источниками данных.
Множество мастеров Access 7.0 помогает пользователю выполнить работы, не прибегая к конструированию. Мастера позволяют создать новые формы, запросы, отчеты, анализировать таблицы базы данных и даже полностью создать одну из многочисленных типовых баз данных.
Для создания приложений пользователя могут использоваться макросы и модули на языке программирования Visual Basic.
Каждый объект и элемент управления имеет свои свойства, определяя которые можно настраивать объекты и элементы управления.
Таблицы создаются пользователем
для хранения данных по одному объекту
модели
данных предметной области.
Запросы создаются пользователем для выборки нужных данных из одной или нескольких связанных таблиц. Запрос может формироваться с помощью запросов по образцу (QBE) или с помощью языка структурированных запросов SQL. С помощью запроса можно также обновить, удалить или добавить данные в таблицы или создать новые таблицы на основе уже существующих.
Формы предназначены для ввода, просмотра и корректировки взаимосвязанных данных базы на экране в удобном виде, который может соответствовать привычному для пользователя документу. Формы также могут использоваться для создания панелей управления в приложении пользователя.
Отчеты предназначены для формирования выходного документа, предназначенного для вывода на печать.
Макросы содержат описание действий, которые должны быть выполнены в ответ на некоторое событие. Каждое действие реализуется макрокомандой. Выбор макрокоманд и задание параметров, используемых ими при выполнении, является простой автоматизированной операцией. Макрос позволяет объединить разрозненные операции обработки данных в приложении.
Модули содержат программы на языке Visual Basic, которые могут разрабатываться пользователем для реализации нестандартных процедур при создании приложения.
Access обладает достаточно удобными средствами создания приложений пользователя. Самым простым средством являются макросы. Макросы позволяют легко связывать отдельные действия, реализуемые с помощью форм, запросов, отчетов, и организовать их выполнение через меню.
Многопользовательская база данных
Получение одновременного доступа нескольких пользователей к общей базе данных возможно при установке Access в локальной сети персональных компьютеров и создании многопользовательской базы данных. Access следит за разграничением доступа разных пользователей к базе данных п обеспечивает защиту данных при одновременной работе пользователей с общими данными. База данных Access может размещаться на компьютере, выделенном в качестве файлового сервера. При этом СУБД Access может быть установлена пли на файловом сервере, или па каждой рабочей станции. Обработка данных базы в обоих случаях осуществляется на рабочих станциях пользователей. Работа в сети со средствами Access для пользователя практически не зависит от конфигурации сети п способа размещения СУБД Access на пей. СУБД Access может функционировать в локальной сети, поддерживающей концепцию клиент-сервер. В такой сети используется сервер баз данных SQL.
На рабочих станциях-клиентах работает Access. Пользователи Access могут взаимодействовать не только со своими локальными базами, но и с данными, расположенными на сервере. Access позволяет посылать на сервер запросы на языке SQL, получать необходимые данные, а также посылать обновленные данные.
Меню Access содержит команды, которые определяют операции, позволяющие пользователю выполнять нужную работу. Access имеет набор встроенных панелей инструментов, обеспечивающий удобный интерфейс пользователя при выполнении работ в каждом из режимов базы данных. Эти панели выводятся в окне Access по умолчанию в соответствии с выбранным режимом работы. Сообщение Готово в строке состояния означает, что Access готов принять команду пользователя.
Открытие базы данных
После запуска Microsoft Access одновременно с его окном выводится первое диалоговое окно, позволяющее начать создание базы данных или открыть существующую базу данных. Если это окно не появляется при запуске Access, для открытия базы данных выполняется команда Файл (Открыть или нажимается кнопка Открыть базу данных. После выполнения этой команды открывается окно базы данных.
Все операции по обработке объектов
базы данных начинаются в окне базы
данных. На вкладках окна базы данных
представлены основные типы объектов
Access:
Таблицы, Запросы, Формы, Отчеты, Макросы
и Модули. Рабочее поле
окна базы данных
предназначено для отображения списка
объектов Access выбранного типа.
В этом
окне представлены три кнопки, которые
позволяют начать работу с объектом:
первая кнопка позволяет Открыть выбранную таблицу, форму, запрос, или Просмотреть отчет, или Запустить макрос;
кнопка Конструктор позволяет перейти в режим доработки любого ранее созданного объекта;
кнопка Создать позволяет приступить к созданию нового объекта любого выбранного типа.
При создании объекта предоставляется возможность выбора режима его разработки. Это может быть «Мастер», или «Конструктор», или некоторый другой режим, зависящий от выбранного типа объекта.
3.2 Создание базы данных
Создание новой реляционной базы данных Access осуществляется в соответствии с ее структурой, полученной в результате проектирования. Создание реляционной базы данных с помощью СУБД начинается с задания структуры таблиц. Затем создается схема данных, в которой устанавливаются связи между таблицами. Access запоминает и использует эти связи при заполнении таблиц и обработке данных. При создании базы данных важно задать параметры, в соответствии с которыми Access будет автоматически поддерживать целостность базы данных. Для этого при определении структуры таблиц должны быть указаны ограничения на допустимые значения данных, а при создании схемы данных на основе нормализованных данных должны быть заданы параметры поддержания целостности связей базы данных.
Завершается создание базы данных процедурой загрузки, то есть заполнением таблиц конкретной информацией. Особое значение имеет технология загрузки взаимосвязанных данных. Удобным инструментом загрузки в Access являются формы ввода-вывода. Формы позволяют создать экранный аналог документа, через который можно вводить данные одновременно в несколько взаимосвязанных таблиц.
Пользователь может начинать работу с базой при любом количестве созданных таблиц еще до создания полной базы, отображающей все объекты модели данных предметной области. База данных может создаваться поэтапно, и в любой момент ее можно дополнять новыми таблицами и вводить связи между таблицами в схему данных.
Создание файла базы данных
Access хранит все таблицы базы данных в одном файле. Прежде чем приступить к созданию таблиц базы данных, необходимо создать файл базы данных с помощью команды Файл \ Создать или кнопки Создать базу данных. В окне Создание можно выбрать один из шаблонов и с помощью Мастера баз данных создать типовую базу данных.
Чтобы создать файл новой не типовой базы данных, нужно выбрать в окне Создание вкладку Общие и щелкнуть значок Новая база данных. Для базы данных задается имя файла и выбирается папка, где разместится файл. Тип файла базы данных по умолчанию имеет расширение MDB. Это расширение является зарегистрированным в Windows и связывается с программой Access. В результате открывается окно базы данных. Список любого выбранного объекта новой базы данных сначала пуст. Теперь можно приступить к созданию таблиц БД.
Создание таблицы базы данных
Создание таблицы БД состоит из двух этапов. На первом этапе определяется ее структура: состав полей, их имена, последовательность размещения в таблице, тип данных, размер, ключевые поля и другие свойства полей. На втором этапе производится создание записей таблицы и заполнение их данными.
Для создания таблицы надо в окне базы данных выбрать вкладку Таблицы и нажать кнопку Создать. Затем выбрать способ создания таблицы: режим таблицы, Конструктора или Мастера таблиц. Режим Конструктора определяет основной способ, при котором структура таблицы полностью задается пользователем.
Режим Конструктора
Структура таблицы определяется в окне Конструктора.
Для определения поля задаются Имя поля, Тип данных, Описание— краткий комментарий, а также общие свойства.
Имя поля. Каждое поле в таблице должно иметь уникальное имя, удовлетворяющее соглашениям об именах объектов в Access.
Тип данных. Тип данных определяется значениями, которые предполагается вводить в поле, и операциями, которые будут выполняться с этими значениями. В Access допускается использование восьми типов данных: текстовый, MEMO (текст большого размера), числовой (конкретные варианты числового типа и их длина задаются в свойстве «Размер поля»), денежный, дата/время, счетчик (используется для определения уникального системного ключа таблицы), логический, поле объекта OLE. Список типов данных вызывается нажатием кнопки списка при выборе типа данных каждого поля.
Общие свойства поля задаются для каждого поля и зависят от выбранного типа данных. Перечислим наиболее важные свойства полей.
Размер поля задает максимальный размер данных, сохраняемых в поле. Для поля с текстовым типом данных максимальный размер 255 байт. Для поля с числовым типом данных можно задать использование целых чисел длиной 1,2,4 байта или использование чисел с плавающей точкой длиной 4 или 8 байт.
Формат поля задает формат отображения данного на экране или печати.
Число десятичных знаков задает для числового и денежного типов данных число знаков после запятой.
Подпись поля задает текст, который выводится в заголовках таблиц, форм, отчетов.
Условие на значение задает ограничения на вводимые значения и позволяет осуществлять контроль ввода.
Сообщение об ошибке задает текст сообщения, выводимый на экран при нарушении условия на значение.
Определение первичного ключа. Для определения первичного ключа выделяются поля, составляющие ключ, и нажимается кнопка Ключевое поле. Для ключевого поля автоматически строится индекс. Индекс ключевого поля всегда уникален и не допускает пустых полей в записях.
После определения структуры таблицы ее надо сохранить с нужным именем. После сохранения таблицы делается доступным режим таблицы, позволяющий перейти ко второму этапу создания таблицы — созданию записей. Переход в режим таблицы осуществляется нажатием кнопки Представление таблицы.
Непосредственный ввод данных в таблицу
Непосредственный ввод данных в таблицу осуществляется в режиме таблицы. Для перехода в этот режим из окна базы данных надо выбрать таблицу и нажать кнопку Открыть. В открывшуюся таблицу можно вводить новые записи, заполняя значениями поля.
При заполнении таблиц, для связей между которыми не определены параметры целостности, только от пользователя зависит обеспечение корректности вводимой информации. При одно-многозначных отношениях таблиц и вводе записей в подчиненную таблицу необходимо отслеживать наличие записей с вводимыми значениями ключевых полей в главной таблице. При изменении (удалении) ключевых полей в записях главной таблицы необходимо изменять (удалять) связанные с ними записи в подчиненных таблицах.
После ввода значения в ячейку поля и попытке перейти к другой ячейке Access проверяет, являются ли введенные данные допустимыми для этого поля. Если введено значение, не соответствующее типу данных поля, Access пытается преобразовать его в правильный тип данных.
Для удобства работы с таблицей можно изменить ее представление на экране — макет. При этом можно менять ширину столбца, высоту строки, шрифт данных таблицы, цвет текста, линий сетки и фона, оформление.
Использование данных типа «Поле объекта OLE»
В таблице КАФЕДРА рассматриваемой базы данных предусмотрено поле ФОТО, которое должно содержать фотографию заведующего, хранящуюся в формате графического редактора Paint в файле с расширением BMP. Тип данных такого поля должен быть задан при определении структуры таблицы как Поле объекта OLE. Размещение этого объекта в поле производится на этапе заполнения полей таблицы. Для отображения объекта OLE необходимо создать в форме или отчете элемент управления — связанную рамку объекта.
Внедренный объект сохраняется в файле базы данных и всегда является доступным. Связанный объект сохраняется в файле объекта. Файл объекта можно обновлять независимо от базы данных.
Для размещения объекта OLE в поле необходимо в режиме таблицы установить курсор на этом поле и выполнить команду Вставка | Объект. В окне Вставка объекта надо выполнить действия по поиску и выбору файла с фотографией.
Схема данных в Access
Схема данных является не только графическим образом базы данных, но используется Access в процессе работы с базой данных. Создание схемы данных позволяет упростить конструирование многотабличных форм, запросов и отчетов, а также обеспечить поддержание целостности взаимосвязанных данных при корректировке таблиц.
Взаимосвязи таблиц. Схема данных задает структуру базы данных. В ней определяются и запоминаются связи между таблицами. Схема данных базы графически отображается в своем окне, где таблицы представлены списками полей, а связи — линиями между полями разных таблиц. Схема данных ориентирована на работу с таблицами, отвечающими требованиям нормализации, между которыми могут быть установлены одно-многозначные (1:М) или одно-однозначные (1:1) связи с обеспечением целостности базы данных. Поэтому схема данных строится в соответствии с информационно-логической моделью.
При построении схемы данных Access автоматически определяет по выбранному полю связи тип связи между таблицами. Если поле, по которому нужно установить связь, является уникальным ключом как в главной таблице, так и в подчиненной, Access устанавливает связь один-к-одному. Если поле связи является уникальным ключом в главной таблице, а в подчиненной таблице является не ключевым или входит в составной ключ, Access устанавливает связь один-ко-многим от главной таблицы к подчиненной.
Связи-объединения. При выборе в качестве поля связи в главной таблице не ключевого поля Access сообщает, что тип отношения не может быть определен.
В этом случае между таблицами возможно установление только связи-объединения. Связь-объединение обеспечивает объединение записей двух таблиц, имеющих одинаковые значения в поле связи. Причем производится объединение каждой записи из одной таблицы с каждой записью из другой таблицы при условии равенства значений в поле связи. Результатом объединения записей, который определяется выбором одного из трех способов, может быть:
• объединение только тех записей, в которых связанные поля обеих таблиц совпадают;
• объединение тех записей, в которых связанные поля обеих таблиц совпадают, а также объединение всех записей из первой таблицы (для которых нет связанных во второй) с пустой записью второй таблицы;
• объединение тех записей, в которых связанные поля обеих таблиц совпадают, а также объединение всех записей из второй таблицы, для которых нет связанных в первой, с пустой записью первой таблицы.
Обеспечение целостности данных. Для связей типа 1:1 и 1:М можно задать параметр обеспечения целостности данных. Обеспечение целостности данных означает выполнение для взаимосвязанных таблиц перечисленных ниже условий корректировки базы данных:
• в подчиненную таблицу не может быть добавлена запись с несуществующим в главной таблице значением ключа связи;
• в главной таблице нельзя удалить запись, если не удалены связанные с ней записи в подчиненной таблице;
• изменение значений ключа связи главной таблицы должно приводить к изменению соответствующих значений в записях подчиненной таблицы.
При попытке пользователя нарушить эти условия в операциях обновления или удаления данных в связанных таблицах Access не допускает выполнения операции.
Установление между двумя таблицами связи типа 1:М или 1:1 и задание для нее параметров целостности данных возможно только при следующих условиях:
• связываемые поля имеют одинаковый тип данных, причем имена полей могут быть различными;
• обе таблицы сохраняются в одной базе данных Access;
• главная таблица связывается с подчиненной по первичному простому или составному ключу (или уникальному индексу) главной таблицы.
Примечание. Access не позволяет создавать связей с параметрами целостности в схеме данных, если ранее введенные в таблицы данные не отвечают требованиям целостности.
Если для выбранной связи обеспечивается поддержание целостности, можно задать режим каскадного обновления и удаления связанных записей. В режиме каскадного обновления связанных записей при изменении значения в поле связи главной таблицы Access автоматически изменит значения в соответствующем поле в подчиненных записях. В режиме каскадного удаления связанных записей при удалении записи из главной таблицы Access выполняет каскадное удаление подчиненных записей на всех уровнях.
Создание схемы данных начинается в окне базы данных с выполнения команды Сервис | Схема данных или нажатия соответствующей кнопки. После этого можно выбрать таблицы, включаемые в схему данных, и приступить к определению связей между ними. Устанавливая связи между парой таблиц в схеме данных, надо выделить в главной таблице уникальное ключевое поле, по которому устанавливается связь, и протащить курсор мыши в соответствующее поле подчиненной таблицы.
Поскольку схема строится для нормализованной базы данных, в открывающемся окне Связи автоматически установится тип отношения один-ко-многим. Для такой связи можно задать параметр Обеспечение целостности данных, а затем установить флажки Каскадное обновление связанных полей и Каскадное удаление связанных записей.
3.3 Загрузка, просмотр и корректировка БД
Access предоставляет широкие возможности по конструированию графического интерфейса пользователя для работы с базой данных. Одним из важнейших инструментов работы являются формы ввода/вывода, которые позволяют осуществлять первоначальную загрузку записей в таблицы базы данных, выполнять их просмотр, а также производить корректировку данных — добавлять и удалять записи, изменять значения в полях.
Технология создания целостной базы, в которой между таблицами установлены связи, предполагает упорядочение загрузки взаимосвязанных таблиц при обеспечении пользователя удобным интерфейсом. При наличии схемы данных Access, состоящей из связанных одно-многозначными отношениями нормализованных таблиц, могут быть созданы экранные формы, которые обеспечивают корректный ввод взаимосвязанных данных. Такие формы, как правило, в значительной степени соответствуют формам первичных документов — источников данных для загрузки справочной информации и оперативных учетных данных. При этом обеспечивается однократный ввод данных.
Прежде чем отображать, вводить или корректировать данные таблиц через экранную форму, надо сконструировать ее.
Загрузка с использованием форм
Перед конструированием форм в Access целесообразно определить последовательность загрузки базы данных. Независимо могут загружаться таблицы, которые не подчинены каким-либо другим таблицам в одно-многозначных связях.
Таблицы, подчиненные каким-либо другим таблицам, могут загружаться либо одновременно с ними, либо после загрузки главных таблиц. В базу данных сначала загружаются справочные данные, а затем — учетные данные из соответствующих документов.
Этапы загрузки базы данных
В процессе определения этапов загрузки базы данных и требовании к конструируемым формам целесообразно выполнить:
• определение документов-источников внемашинной сферы, содержащих необходимые данные для загрузки таблиц базы данных;
• определение таблиц — объектов загрузки с одного документа-источника;
• определение последовательности загрузки;
• определение подсхемы данных для каждого этапа загрузки, необходимой для построения экранной формы ввода с документа. В подсхему данных могут входить: таблицы - объекты загрузки; таблица, связанная с объектом загрузки и содержащая данные для отображения (вывода) в форме; таблица, главная относительно загружаемой, позволяющая группировать вводимые (выводимые) записи;
• определение общей структуры экранной формы, то есть ее макета в соответствии со структурой входного документа и подсхемой данных. При этом для многотабличной (составной) формы определяется таблица, которая будет источником записей основной части этой формы, а также определяются таблицы, которые будут источником записей подчиненных форм, включаемых в составную форму;
• определение состава и размещение реквизитов для каждой из частей составной формы.
Примечание. Ключевые поля таблицы-источника основной части надо вводить в эту часть формы. В подчиненной форме надо предусмотреть ключевые поля таблицы-источника этой формы, которых нет в таблице-источнике основной части.
В соответствии с полученным макетом формы осуществляется конструирование экранной формы средствами Access.
Разработка форм в Access
Конструирование форм осуществляется средствами Access в соответствии с требованиями к форме, определенными пользователем в процессе подготовительной работы. При этом указывается, из какой таблицы нужно отображать данные, какие именно поля должны быть представлены в форме, нужны ли вычисляемые поля, какие графические элементы, служащие для ее оформления, будут использоваться — линии, поясняющий текст, рисунки.
Структура формы
Структура формы отображается в режиме Конструктора форм. В этом режиме может производиться настройка областей и элементов формы пользователем.
В окне Конструктора выделяются области заголовка, данных и примечаний формы. Области формы наполняются различными графическими объектами. Графические объекты, связанные с записями таблиц и предназначенные для отображения данных некоторого поля, называются элементами управления. Основными типами элементов управления являются поле, поле со списком и список.
Графические объекты, не связанные с таблицами или запросами, предназначены, прежде всего, для создания макета формы и содержат надписи полей (пользовательские названия реквизитов), внедряемые объекты, надписи этих объектов, заголовки. Информация об этих элементах сохраняется в макете формы.
Как форма в целом, так и каждый из ее элементов обладает свойствами, которые можно просматривать и корректировать. Свойства элемента позволяют определить его внешний вид, размер, местоположение в форме, режим ввода/вывода, привязать к элементу выражение, макрос или программу. Свойства отображаются в диалоговом окне, где для каждого свойства и его значения отводится строка. В форме могут быть предусмотрены кнопки управления для разных целей, например для перехода к другим записям в просматриваемой таблице, для работы с записями (добавить, дублировать, восстановить, удалить, сохранить), для работы с формой (открыть, закрыть, фильтровать, обновить).
При конструировании форм используются Панель конструктора форм, Панель форматирования, Панель элементов.
Мастер и Конструктор форм
Форма может быть создана пользователем в режиме Конструктора форм или с помощью Мастера. В первом случае создание начинается с пустой формы и конструирование полностью возлагается на пользователя. Мастер форм или Автоформа автоматизирует создание формы, уточняя у пользователя параметры формы. Чтобы начать создание формы, надо в окне базы данных выбрать вкладку Формы и нажать кнопку Создать. Открывающееся диалоговое окно Новая форма предоставляет возможность выбрать режим создания формы.
Мастер форм может создавать форму для одной таблицы или для нескольких взаимосвязанных таблиц. При выборе только одной таблицы могут быть созданы формы В один столбец, Табличная или Ленточная. Форма В один столбец является однозаписевой, Табличная и Ленточная формы являются многозаписевыми и размещают все поля в одной строке. Мастер форм позволяет пользователю определить, какие поля включаются в форму, и выбирать стиль ее оформления.
Команды Автоформа создают для заданной таблицы формы, которые отличаются от форм, создаваемых Мастером, тем, что включают все поля таблицы и не предоставляют возможности выбора стиля оформления. Эти команды, не вступая в диалог с пользователем и не отображая формы в режиме Конструктора, выводят ее на экран в режиме формы, то есть заполненную значениями из таблицы.
Форма, созданная Мастером пли любой командой Автоформа, может быть отредактирована в соответствии с требованиями пользователя в режиме Конструктора форм.
Разработка многотабличной формы
Составная многотабличная форма создастся для работы с несколькими взаимосвязанными таблицами. Многотабличная форма может состоять из основной части и одной или нескольких подчиненных включаемых форм, то есть быть составной. Подчиненная форма может быть построена на основе как подчиненной, так и главной таблицы относительно таблицы-источника основной части формы.
Многотабличная форма может не иметь включаемых форм. В этом случае в форму кроме полей таблицы, на основе которой она строится, добавляются поля из связанной таблицы, являющейся главной относительно основной таблицы формы.
Многотабличная форма может быть создана в режиме Конструктора или с помощью Мастера форм. При конструировании и создании многотабличной формы средствами Access могут использоваться различные приемы. Наиболее технологичным является, очевидно, первоначальное создание форм с помощью Мастера с последующей их доработкой в Конструкторе. Мастер упрощает процесс создания формы, так как автоматически выполняет большинство требуемых операций.
Создание многотабличной формы с помощью Мастера
Мастер форм предоставляет возможность выбрать включаемые в форму поля из нескольких взаимосвязанных таблиц, а также запросов. При этом используются различные способы построения многотабличной формы.
• Явное включение подчиненной формы. С помощью Мастера можно создать составную форму, включающую одну или несколько подчиненных форм стандартного вида с выбранными полями. При этом подчиненная форма строится для каждой подчиненной таблицы. Подчиненная форма отображает данные из всех записей подчиненной таблицы, которые связаны с записью главной таблицы, отображаемой в основной части формы.
• Вызов связанной формы по кнопке. Мастер форм позволяет создать связанные формы, которые не включаются непосредственно в форму. При этом вместо подчиненной формы включается лишь кнопка, представляющая связанную форму, по которой ее можно вызвать.
• Многотабличная форма без подчиненных и связанных форм. Составная многотабличная форма, построенная Мастером, может не включать подчиненных и связанных форм. Такая форма создастся, если необходимо отображать записи подчиненной таблицы, дополненные полями из одной или нескольких главных таблиц. В этом случае источником данных для записей, выводимых в форме, является запись подчиненной таблицы. Форма отображает поля из записи подчиненной таблицы и поля из единственной связанной с ней записи главной таблицы.
При создании формы в окне Новая форма выбирается режим создания Мастер форм и в качестве источника данных основной части формы выбирается таблица или запрос. В открывшемся первый раз диалоговом окне Создание форм последовательно выбираются таблицы и из них — поля, включаемые в форму. В следующем окне Создание форм в области Выберите тип представления данных надо выделить таблицу, которая является источником основной части формы.
Если таблица — источник основной части формы является главной по отношению к другой таблице, выбранной для формы, в окне Создание форм можно выбрать одни из возможных типов подключения формы:
для непосредственного включения подчиненной формы надо выбрать Подчиненные формы;
для включения кнопки, вызывающей связанную форму, надо выбрать Связанные формы.
Далее можно выбрать вид Ленточная или Табличная для подчиненной или связанной формы.
Если таблица — источник основной части формы является подчиненной по отношению к другой таблице, тоже выбранной для формы, то создаваемая многотабличная форма не будет включать подчиненную форму. Однако эта форма будет содержать поля из главной таблицы. В окне Создание форм автоматически будет установлен тип формы Одиночная форма. Далее предоставляется возможность выбрать вид формы: В один столбец, Ленточный или Табличный.
Далее предоставляется возможность выбрать стиль оформления, который определяет отображение надписей и значений полей в форме. В последнем диалоговом окне Создание форм можно отредактировать заголовки форм.
После нажатия кнопки Готово Мастер завершает создание формы. Сохранение форм производится автоматически. После работы Мастера можно произвести нужную доработку формы в режиме Конструктора. При этом можно перемешать, добавлять, удалять поля, менять их свойства, в том числе шрифт и размеры, подпись поля, текст в заголовке формы.
3.4 Запросы к базе данных
Основы разработки запросов
Запрос позволяет выбрать необходимые данные из одной или нескольких взаимосвязанных таблиц, произвести вычисления и получить результат в виде таблицы. Через запрос можно производить обновление данных в таблицах, добавление и удаление записей. Запрос строится на основе одной или нескольких таблиц базы данных. Кроме того, могут использоваться сохраненные таблицы, полученные в результате выполнения других запросов. Запрос может строиться непосредственно на другом запросе с использованием его временной таблицы с результатами.
В Microsoft Access имеется удобное для пользователя графическое средство формирования запроса по образцу — QBE (Query By Example), с помощью которого легко может быть построен сложный запрос. Запрос QBE включает подсхему данных с используемыми таблицами и бланк запроса. При конструировании запроса достаточно, работая мышью, выделить и перетащить необходимые поля из таблиц, представленных в схеме данных запроса, в бланк запроса и ввести условия отбора записей.
Назначение и виды запросов
Средствами запроса можно:
• выбрать записи, удовлетворяющие условиям отбора;
• включить в результирующую таблицу запроса нужные поля;
• произвести вычисления в каждой из полученных записей;
• сгруппировать записи с одинаковыми значениями в одном или нескольких полях и выполнить над ними групповые функции;
• произвести обновление полей в выбранном подмножестве записей;
• создать новую таблицу базы данных, используя данные из существующих таблиц;
• удалить выбранное подмножество записей из таблицы базы данных;
• добавить выбранное подмножество записей в другую таблицу. Многотабличный запрос позволяет сформировать новую таблицу, записи которой образуются путем объединения взаимосвязанных записей из разных таблиц базы данных и включения нужных полей из этих таблиц.
Последовательное выполнение ряда запросов позволяет решать достаточно сложные задачи, не прибегая к программированию. В Access может быть создано несколько видов запросов.
• Запрос на выборку — выбирает данные из взаимосвязанных таблиц и других запросов. Результатом его является таблица, которая существует до закрытия запроса.
• Запрос на создание таблицы — основам на запросе выборки, но, в отличие от него, результат запроса сохраняется в новой таблице,
• Запросы на обновление, добавление, удаление — это запросы-действия, в результате выполнения которых изменяются данные в таблицах.
Запрос па выборку играет особую роль, так как на его основе строятся запросы другого вида.
Основы конструирования запроса
Основные принципы конструирования запроса заложены в технике конструирования запроса на выборку. Запрос на выборку позволяет достаточно просто выбрать данные из одной или нескольких взаимосвязанных таблиц. Результаты выполнения запроса отображаются в виде таблицы, существующей до ее закрытия. Записи этой таблицы формируются на основе задаваемых и запросе условий отбора записей в исходных таблицах и связей между этими таблицами, имеющимися в схеме данных запроса. Поля, включаемые в записи результата, указываются пользователем в бланке запроса.
Таблица с результатами запроса может применяться при дальнейшей обработке данных. В запросе на выборку могут использоваться не только таблицы базы данных, но и ранее созданные запросы (таблицы, являющиеся результатом их выполнения). При этом нет необходимости сохранять таблицы, получаемые в результате выполнения ранее созданных запросов.
Непосредственное использование в запросе другого запроса невозможно. В этом случае включаемый запрос надо преобразовать в запрос на создание таблицы. Этот запрос отличается от запроса на выборку только сохранением результата запроса как новой таблицы базы данных. Эта таблица далее может использоваться в другом запросе.
Результаты выполнения запроса выводятся в режиме таблицы. Окно запроса в режиме таблицы аналогично окну просмотра таблицы базы данных.
Разработка запроса производится в режиме Конструктора запросов.
Окно запроса
Для создания запроса в окне базы данных надо открыть вкладку Запрос и нажать кнопку Создать. В открывшемся окне Новый запрос выбрать Конструктор.
В окне Добавление таблицы выбрать используемые в запросе таблицы и нажать кнопку Добавить. Затем кнопкой Закрыть выйти из окна Добавление таблицы.
В результате появится окно Конструктора запросов — <имя запроса>: запрос на выборку.
Окно Конструктора запросов разделено на две панели:
Верхняя панель содержит схему данных запроса, которая включает выбранные для данного запроса таблицы. Таблицы представлены списками полей. Схема данных отображает связи между таблицами, имеющиеся в схеме данных базы, и связи объединения, которые устанавливает Access, если таблицы имеют поля с одинаковыми именами и типами данных. Кроме того, пользователь сам может установить нужные связи (объединения), перетащив задействованные в связи поля из одного списка полей в другой.
Нижняя панель является бланком запроса по образцу, который нужно заполнить. Каждый столбец бланка относится к одному полю, с которым нужно работать в запросе. Поля могут использоваться для включения их в результат выполнения запроса, для задания сортировки по ним и для задания условий отбора записей.
При заполнении бланка запроса необходимо: в строку Поле включить имена полей, используемых в запросе, в строке Вывод на экран отметить поля, которые должны быть включены в результирующую таблицу, в строке Условие отбора задать условия отбора записей, в строке Сортировка выбрать порядок сортировки записей результата.
Каждый столбец бланка запроса соответствует одному из полей таблиц. Кроме того, здесь может размещаться вычисляемое поле, значение которого вычисляется на основе значений других полей, или итоговое поле, использующее одну из встроенных групповых функций Access. Для включения нужных полей из таблиц в соответствующие столбцы запроса достаточно перетащить нужное поле из списка полей таблицы в схеме данных запроса в первую строку бланка запроса.
Условия отбора записей
Условия отбора записей могут задаваться для одного или нескольких полей в соответствующей строке бланка запроса. Условием отбора является выражение, которое состоит из операторов сравнения и операндов, используемых для сравнения. В качестве операндов выражения могут использоваться некоторые заданные значения и идентификаторы (ссылки). Идентификатор представляет собой ссылку на значение поля, элемента управления или свойства. Идентификаторами могут быть имена полей, таблиц, запросов, форм, отчетов и т. д. Они должны заключаться в квадратные скобки. Если необходимо указать ссылку па поле в конкретной таблице, форме, отчете, то перед именем поля ставится имя таблицы, также заключенное в квадратные скобки и отделенное от имени поля восклицательным знаком. Например: [Имя таблицы]|[Имя поля].
Вычисляемые поля
В запросе над полями могут производиться вычисления. Результат вычисления образует вычисляемое поле в таблице, создаваемой по запросу. При каждом выполнении запроса производится вычисление с использованием текущих значений полей. При вычислениях могут использоваться арифметические выражения и встроенные функции Access.
Выражение вводится в бланк запроса в пустую ячейку строки Поле. В этой ячейке после нажатия клавиши <Еntег> или перевода курсора в другую ячейку формируется имя поля Выражением, где N — целое число, увеличивающееся на единицу для каждого нового создаваемого вычисляемого поля в запросе. Имя вычисляемого поля выводится перед выражением и отделяется от него двоеточием. Например, Выражение1: [Цена]*[Количество], где Цена и Количество — имена полей.
Имя вычисляемого поля «Выражение1» становится заголовком столбца в таблице с результатами выполнения запроса. Это имя можно изменить. Пользователь имеет возможность переименовать вычисляемое поле. Для этого достаточно в бланке запроса вместо Выражение N ввести повое имя.
Параметры запроса
Конкретное значение поля в условии отбора может вводиться непосредственно в бланк запроса или задаваться пользователем при выполнении запроса в диалоговом окне. Чтобы выводилось диалоговое окно для ввода конкретного значения поля в условия отбора, нужно определить параметр запроса. Имя параметра запроса может вводиться непосредственно в условия отбора в квадратных скобках. При выполнении запроса это имя появится в диалоговом окне Введите значение параметра. Если в запрос вводится несколько параметров, то порядок их ввода через диалоговые окна определяется порядком расположения полей с параметрами в бланке запроса.
Мастера создания запросов
Простейшие запросы некоторых видов могут быть созданы с помощью Мастеров Access. Мастер запросов ускоряет процесс создания запроса, автоматически выполняя первоначальные простейшие действия по подготовке запроса. Вызванный Мастер запросов запрашивает у пользователя сведения и создает запрос на основе ответов пользователя. При необходимости можно в режиме Конструктора отредактировать запрос.
Создание запроса с помощью Мастера начинается с выбора в окне базы данных вкладки Запросы и нажатия кнопки Создать. В окне диалога Новый запрос надо выбрать из списка нужный вид запроса. Далее следует выполнять инструкции, выводящиеся в окнах диалога Мастера. В последнем окне диалога предлагается выбрать запуск запроса или просмотр структуры запроса в режиме Конструктора.
С помощью Мастера можно создать:
• простой запрос на выборку;
• запрос для поиска повторяющихся записей;
• запрос для поиска записей, не имеющих подчиненных записей;
• перекрестный запрос.
Заметим, что запрос для поиска повторяющихся записей и запрос для поиска записей, не имеющих подчиненных, являются элементарными запросами на выборку.
3.5. Формирование и вывод отчетов
Средства Access по разработке отчетов предназначены для создания отчета, по которому может быть осуществлен вывод данных из таблиц в виде выходного печатного документа. Эти средства позволяют конструировать отчет сложной структуры, обеспечивающий вывод взаимосвязанных данных из многих таблиц.
При этом могут быть выполнены самые высокие требования к оформлению документа. Перед началом конструирования отчета пользователь должен произвести подготовительную работу, в результате которой нужно определить требуемый макет отчета.
В процессе конструирования определяется состав и содержание разделов отчета, а также размещение в нем выводимых значений из полей таблиц базы данных. Кроме того, оформляются заголовки, подписи реквизитов отчета, определяется размещение вычисляемых реквизитов.
Средства конструирования отчета позволяют группировать данные по нескольким уровням. Для каждого уровня могут производиться вычисления итогов, определяться заголовки и примечания по каждой группировке. При формировании отчета могут производиться разнообразные вычисления.
Отчет может создаваться с помощью Мастера или в режиме Конструктора отчетов. Во многих случаях удобно использовать Мастера. Созданный Мастером отчет можно доработать в режиме Конструктора.
При необходимости вывода в отчете данных из многих таблиц в качестве основы для отчета может быть использован многотабличный запрос. На запрос могут быть возложены наиболее сложные виды выборки и предварительной обработки данных. Конструктор отчетов позволяет полученные в запросе данные успешно структурировать и оформлять.
Конструирование отчета
Окно Конструктора отчетов
Разделы отчета. Создание и изменение макета отчета осуществляется в окне Конструктора отчетов. Первоначально в этом окне отображаются пустые разделы отчета.
Наличие этих разделов, а также их добавление или удаление определяется командами меню Вид | Колонтитулы и Вид | Заголовок | Примечание отчета.
При разработке формы поля в окне нужно заполнить элементами в соответствии с определенным пользователем макетом отчета. В заголовок помещается текст из шапки макета отчета. В колонтитул обычно помещают заголовки, даты и номера страниц. При определении содержания этих разделов следует исходить из требований к оформлению отдельных страниц отчета. В области данных размещаются поля таблиц базы данных.
При необходимости группировки записей по полю в окно Конструктора отчетов могут быть добавлены разделы Заголовок группы и Примечание группы. В примечании группы могут быть размещены выражения для подведения итогов по группе. Допускается до 10 уровней группировки записей.
Элементы разделов отчета. В процессе конструирования с помощью команд или кнопок панели инструментов Конструктора отчетов и панели элементов разделы отчета заполняются элементами в соответствии с макетом отчета. Поля с неповторяющимися значениями размещают в Области данных. Поля с повторяющимися значениями, по которым производится группировка записей, целесообразно размещать в заголовке группы.
Элементами разделов отчета, кроме полей таблиц или запросов, на которых строится отчет, являются также тексты подписей, кнопки управления, внедряемые объекты, линии, прямоугольники и т. п. Для каждого из элементов имеются соответствующие кнопки на панели элементов.
Для каждого элемента, а также раздела и отчета в целом могут быть уточнены свойства. Технология размещения элементов и определения их свойств практически такая же, как и в Конструкторе форм.
Просмотр и печать отчета
Для просмотра ранее созданного отчета нужно в окне базы данных выбрать Отчеты и нажать кнопку Просмотр. Отчет при просмотре отобразится на экране таким, каким он будет напечатан. Переход в режим предварительного просмотра из режима Конструктора отчетов выполняется нажатием кнопки Представление отчета. В режиме предварительного просмотра имеется своя панель инструментов.
Кнопка Печать панели инструментов режима предварительного просмотра позволяет вывести данный отчет на печать. С помощью команды Файл | Макет страницы можно выбрать принтер, задать формат бумаги, размер полей, расстояние между строками, ориентацию и т. д. Команда Файл | Печать позволяет выбрать для печати отдельные страницы отчета или выделенные записи, распечатать несколько копий, вывести отчет в файл.
Список литературы
Ананьєв, О.М. Інформаційні системи і технології в комерційній діяльності [Текст] : підручник / О. М. Ананьєв, В. М. Білик, Я. А. Гончарук. - Львів : Новий Світ-2000, 2006. - 584 с.
Антонов, В.М. Фінансовий менеджмент: сучасні інформаційні технології [Текст] : навчальний посібник / В. М. Антонов, Г. К. Яловий ; ред. В. М. Антонов ; Мін-во освіти і науки України, КНУ ім.Т.Г.Шевченка. - К. : ЦНЛ, 2005. - 432 с.
Гужва, В.М. Інформаційні системи і технології на підприємствах [Текст] : навчальний посібник / В. М. Гужва ; Мін-во освіти і науки України, КНЕУ. - К. : КНЕУ, 2001. - 400 с.
Гуржій, А.М. Інформатика та інформаційні технології [Текст] : підручник / А. М. Гуржій, Н. І. Поворознюк, В. В. Самсонов. - Х. : Компанія СМІТ, 2003. - 352 с.
Информационные системы и технологии: приложения в экономике и управлении: Кн. 6 [Текст] : учебное пособие / Мин-во образования и науки Украины, Донецкий нац. ун-т ; ред. Ю. Г. Лысенко. - Донецк : Юго-Восток, 2004. - 377 с.
Маслов, В.П. Інформаційні системи і технології в економіці [Текст] : навчальний посібник / В. П. Маслов ; Мін-во освіти і науки України. - К. : Слово, 2003. - 264 с.
Олійник, А. В. Інформаційні системи і технології у фінансових установах [Текст] : навчальний посібник / А. В. Олійник, В. М. Шацька. - Львів : Новий Світ-2000, 2006. - 436 с.
Румянцев, М.И. Информационные системы и технологии финансово-кредитных учреждений [Текст] : учебное пособие для вузов / М. И. Румянцев ; Западнодонбасский ин-т экономики и управления. - Днепропетровск : ИМА-пресс, 2006. - 482 с. -
Черняк, О.І. Системи обробки економічної інформації [Текст] : підручник / О. І. Черняк, А. В. Ставицький, Г. О. Чорноус. - К. : Знання, 2006. - 447 с.