Проектирование реляционной базы данных в предметной области
Процесс создания и определение задач полнофункциональной системы управления базами данных. Разработка структуры таблиц, хранящих данные и формирование запросов. Построение форм для ввода и просмотра информации в запросах и создание необходимых отчетов.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 11.09.2010 |
Размер файла | 1,1 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Белорусский национальный технический университет
Автотракторный факультет
Кафедра "Коммерческая деятельность и бухгалтерский учет на транспорте"
Курсовая работа
по дисциплине "Технологии организации, хранения и обработки данных"
на тему: "Проектирование реляционной базы данных в предметной области"
Выполнил: студент гр.301955
Сидорчик А. В.
Проверил: к.э.н., доцент
Краснова И. И.
Минск 2007
Содержание
- Введение
- 1. постановка задачи
- 2. СУБД. Характеристики ms access
- 3. создание реляционной базы данных
- 3.1 Общее понятие о реляционной базе данных
- 3.2 создание реляционной базы данных
- 4. Формирование запросов к базе данных
- 4.1 Общее понятие запросов
- 4.2 Создание запроса выбора
- 4.3 Создание перекрестного запроса
- 4.4. Создание запросов действия
- 4.5 Выполнение и сохранение запроса
- 5. создание форм пользователя
- 6. подготовка отчетов
- Заключение
- Список использованной литературы
- Введение
Прогресс, достигнутый за последние несколько лет во всех аспектах вычислительной техники, включая теорию, технологию и приложения, привели к значительному расширению области применения компьютеров и росту числа их пользователей. Существенной частью современного общества являются разнообразные системы доступа и хранения информации, которые являются неотъемлемой составляющей современного научно-технического прогресса. Существует много веских причин перевода существующей информации на компьютерную основу, т.к. более быстрая обработка данных и централизация их хранения с использованием клиент/серверных технологий позволяют сберечь значительные средства, а главное и время для получения необходимой информации. Также значительно упрощается доступ к большим объемам информации и ведение баз данных.
В любой организации, как большой, так и маленькой, возникает проблема такой организации управления данными, которая обеспечила бы наиболее эффективную работу. Некоторые организации используют для этого шкафы с папками, но большинство предпочитают компьютеризированные СУБД, позволяющие эффективно хранить, извлекать информацию и управлять большими объемами данных. Современные СУБД - многопользовательские системы управления базой данных, которые специализируется на управлении массивом информации, одним или множеством одновременно работающих пользователей.
Одной из распространенных СУБД является Ассеss, входящая в состав пакета прикладных программ Microsoft Office, разработанного корпорацией Microsoft.
Системы управления базами данных составляют в настоящее время основу компьютерного обеспечения информационных процессов, входящих практически во все сферы человеческой деятельности.
Процесс создания полнофункциональной системы управления базами данных, как правило, содержит в себе следующие этапы:
· определение задач, выполняемых создаваемой СУБД;
· разработка;
· создание запросов;
· построение форм для ввода/вывода данных и просмотра информации, хранящихся в таблицах и запросах;
· создание необходимых отчетов.
Именно подробному изучению работы с отчетами в МS Ассеss и посвящена данная курсовая работа.
1. Постановка задачи
Цель данной работы - дать теоретические сведения о технологиях организации и хранения данных в базах и практические навыки по созданию баз данных и управлению ими.
Задачи работы сводятся к получению:
· основных сведений из теории баз данных и их проектирования;
· представления о назначении, архитектуре, функциональных возможностях и тенденциях развития современных систем управления базами данных (СУБД) и к выработке:
· практических навыков создания баз данных и проектирования их объектов: запросов, форм, отчетов в среде СУБД.
В ходе курсовой работы будет создана база данных по промышленному предприятию, которое включает три цеха: основной, вспомогательный и обслуживающий. В каждом из цехов работают работники, которые имеют свой личный код. Предприятие получает спецодежду, определенной стоимости, и распределяет ее между работниками цехов в соответствии с занимаемыми должностями. Стоимость получаемой спецодежды оплачивается работниками с учетом скидок, приходящихся на данного сотрудника предприятия.
Таким образом, проектируемая база данных будет состоять из четырех таблиц: цех, работники, спецодежда, получение. На основании данных таблиц будут созданы запросы на выборку, формы и отчеты.
2. СУБД. Характеристика ms access
В современной технологии баз данных предполагается, что создание базы данных, её поддержка и обеспечение доступа пользователей к ней осуществляются централизованно с помощью специального программного инструментария - системы управления базами данных (СУБД).
Система управления базами данных (СУБД) - это совокупность языковых и программных средств, предназначенных для создания, ведения и совместного использования БД многими пользователями. В широком смысле слова база данных - это совокупность сведений о конкретных объектах реального мира в какой-либо предметной области. Объектом может быть предмет, вещество, событие, лицо, явление, т.е. все то, что может характеризоваться набором значений некоторой совокупности атрибутов. (Например, телефонный справочник, личные дела сотрудников, библиотечные каталоги и др.).
База данных - это поименованная совокупность структурированных данных, относящихся к определенной предметной области. БД должна обладать определенными свойствами:
· многократное использование;
· быстрый поиск и получение информации по запросам;
· простота обновления;
· уменьшение избыточности данных;
· защита от несанкционированного доступа;
· максимальная независимость от прикладных программ.
Обеспечивает выполнение этих и других свойств, предоставляет различные информационные услуги пользователям система управления базами данных.
Современная СУБД содержит в своем составе программные средства создания баз данных, средства работы с данными и сервисные средства. С помощью средств создания БД проектировщик, используя язык описания данных (ЯОД), переводит логическую модель БД в физическую структуру, а на языке манипуляции данными (ЯМД) разрабатывает программы, реализующие основные операции с данными (в реляционных БД - это реляционные операции) (см. рис. 2.1). При проектировании привлекаются визуальные средства, т.е. объекты, и программа-отладчик, с помощью которой соединяются и тестируются отдельные блоки разработанной программы управления конкретной БД.
Рис. 2.1 Состав СУБД
Средства работы с данными предназначены для пользователя БД. Они позволяют установить удобный (как правило, графически многооконный) интерфейс с пользователем, создать необходимую функциональную конфигурацию экранного представления выводимой и вводимой информации (цвет, размер и количество окон, пиктограммы пользователя и т.д.), производить операции с данными БД, манипулируя текстовыми и графическими экранными объектами.
Сервисные средства позволяют при проектировании использовании БД привлечь к работе с БД другие системы. Например, воспользоваться данными из табличного процессора Exсel или обратиться к сетевому серверу.
По степени универсальности различают СУБД общего и специального назначения.
СУБД общего назначения не ориентированы на какую-либо конкретную предметную область или на информационные потребности конкретной группы пользователей. Развитые функциональные возможности таких СУБД обеспечивают безболезненную эволюцию построенных на их основе автоматизированных информационных систем в рамках их жизненного цикла.
Однако в некоторых случаях доступные СУБД общего назначения не позволяют добиться требуемой производительности и/или удовлетворить заданные ограничения по объёму памяти, предоставляемой для хранения БД. Тогда приходится разрабатывать специализированную СУБД для данного конкретного применения. Примером специализированной СУБД может быть система IMBASE, используемая для автоматизации проектных и конструкторских разработок.
Важнейшим классификационным признаком СУБД является тип модели данных, поддерживаемый СУБД. По этому признаку СУБД делятся на:
· иерархические. Иерархическая модель данных является наиболее простой среди всех даталогических моделей. Основными информационными единицами в иерархической модели являются: база данных, сегмент и поле. Поле определяется как минимальная, неделимая единица данных, доступная пользователю с помощью СУБЗ. Сегмент называется записью, при этом в рамках иерархической модели определяются два понятия: тип сегмента или тип записи и экземпляр сегмента или экземпляр записи. Тип сегмента - это поименованная совокупность типов элементов данных, в него входящих. Экземпляр сегмента образуется из конкретных значений полей или элементов данных, в него входящих. Для возможности различия отдельных записей в данном наборе каждый тип сегмента должен иметь ключ или набор ключевых атрибутов (полей, элементов данных). Ключом называется набор элементов данных, однозначно идентифицирующих экземпляр сегмента.
В иерархической модели сегменты объединяются в ориентированный древовидный граф. При этом полагают, что направленные ребра графа отражают иерархические связи между сегментами: каждый сегмент связан с одним или несколькими на более низком уровне, и только с одним на более высоком уровне. Сегмент, находящийся на более высоком уровне иерархии, называется логическим исходным по отношению к сегментам, соединенным с ним направленными иерархическим ребрами, которые в свою очередь называются логически подчиненными по отношению к этому сегменту.
Схема иерархической БД представляет собой совокупность отдельных деревьев, каждое дерево в рамках модели называется физической базой данных. Каждая физическая БД удовлетворяет следующим иерархическим ограничениям:
ь в каждой физической БД существует один корневой сегмент, то есть сегмент, у которого нет логического исходного (родительского) типа сегмента;
ь каждый логический исходный сегмент может быть связан с произвольным числом логически подчиненных сегментов;
ь каждый логически подчиненный сегмент может быть связан только с логически исходным сегментом.
Основными достоинствами иерархической модели - простота описания иерархических структур реального мира, гибкие возможности организации поиска. А недостатками являются: в этой модели не предусмотрена поддержка соответствия между парными записями, модель реализует отношения между исходной и дочерней записью по схеме 1:N, то есть одной родительской записи может соответствовать любое число дочерних. Т.о., приходиться дублировать информацию; сложно структурировать данные в больших БД.
Первой иерархической СУБД была система IMS (Information Management System) компании IBM, коммерческое распространение которой началось в 1968 г.;
· сетевые. Если в модели каждый порожденный элемент может иметь более одного исходного, то такая модель называется сетевой. Она представляет структуру, у которой любой элемент может быть связан с любым другим без каких-либо ограничений. Сетевая база данных состоит из набора записей, соответствующих каждому экземпляру объекта предметной области и набора связей между ними. К достоинствам сетевой модели можно отнести гибкость организации БД, а к недостаткам - некомпактное хранение данных, сложность отбора, высокая степень зависимости от конкретных данных. Первой сетевой СУБД считается система IDS (Integrated Data Store), разработанная компанией General Electric немного позже системы IMS;
· реляционные. В реляционных базах данных вся информация представляется в виде прямоугольных таблиц. Она была разработана Коддом в начале 70-х годов XX века. Будучи математиком по образованию, Кодд предложил использовать для обработки данных аппарат теории множеств. Он показал, что любое представление данных сводится к совокупности двумерных таблиц особого вида, известного в математике как отношение. Одна из главных идей Кодда заключалась в том, что связь между данными должна устанавливаться в соответствии с их внутренними логическими взаимоотношениями.
Второй важный принцип, предложенный Коддом, заключается в том, что в реляционных системах одной командой могут обрабатываться целые файлы данных, в то время как в ранних СУБД одной командой обрабатывалась только одна запись. Реализация этого принципа существенно повысила эффективность программирования баз данных. Реализация реляционных принципов в СУБД сделала возможным разработку простых языков запросов, доступных для изучения пользователями, не являющимися специалистами в области программирования. Таким образом, благодаря снижению требований к квалификации существенно расширился круг пользователей баз данных.
Одним из основных преимуществ реляционной модели является ее однородность. Все данные рассматриваются как хранимые в таблицах и только в таблицах. Таблица состоит из строк и столбцов и имеет имя, уникальное внутри базы данных. Каждая таблица обладает следующми свойствами:
v каждый элемент таблицы - один элемент данных;
v все столбцы в таблице однородны, т.е. все элементы одного столбца (поля) имеют одинаковый тип и длину;
v каждый столбец имеет уникальное имя;
v одинаковые строки (записи) в таблице отсутствуют;
v порядок следования строк и столбцов может быть произвольным.
Любая таблица может иметь один или несколько столбцов, значения в которых однозначно идентифицируют каждую ее строку. Такой столбец (или комбинация столбцов) называется первичным ключом. В таблице не должно быть строк, имеющих одно и то же значение первичного ключа. Если таблица удовлетворяет этому требованию, она называется отношением. Взаимосвязь таблиц в реляционной модели поддерживается внешними ключами. Внешний ключ - это столбец (столбцы), значения которых однозначно характеризуют записи другой таблицы (отношения), т.е. задают значения их первичного ключа. Благодаря наличию связей между таблицами обеспечивается целостность данных.
Первые коммерческие реляционные СУБД от компаний IBM, Oracle Corporation, Relation Technology Inc. и других поставщиков появились в начале 80-х годов. Реляционные СУБД просты в использовании, повышают производительность программистов при разработке прикладных программ, хорошо приспособлены для работы в архитектуре клиент/сервер, позволяют параллельную обработку БД, хорошо приспособлены к графическим пользовательским интерфейсам. Реляционные СУБД продолжают совершенствоваться, предоставляя пользователю возможность решать всё более сложные задачи;
· объектно-реляционные (постреляционные). Объектно-реляционные СУБД продолжают использовать стандартный язык запросов для реляционных БД - SQL, но с объектными расширениями;
· объектно-ориентированные. В основе объектно-ориентированных СУБД лежит объектно-ориентированная модель обработки данных.
· многомерные, в основе которых лежит многомерная модель данных.
На самом общем уровне все СУБД можно разделить на:
- профессиональные (промышленные), которые представляют собой программную основу для разработки автоматизированных систем управления крупными экономическими объектами. На их базе создаются комплексы управления и обработки информации крупных предприятий, банков или даже целых отраслей. В настоящее время характерными представителями профессиональных СУБД являются такие программные продукты: Oracle, DB2, Sybase, Informix, Inqres, Progress.
- персональные (настольные). Это программное обеспечение, ориентированное на решение задач локального пользователя или компактной группы пользователей и предназначенная для использования на персональном компьютере, это объясняет их второе название - настольные. К ним относятся DBASE, FoxBase, FoxPro, Clipper, Paradox, Access.
В настоящее время среди СУБД выделяют СУБД (условно говоря) промежуточные между профессиональными и персональными.SQL Windows/SQL Base, Interbase, Microsoft SQL Server.
СУБД Microsoft Access (в дальнейшем Access) предназначена для работы с реляционными базами данных. Эта СУБД входит в программный комплекс Microsoft Office (в вариантах Professional, Premium и Developer), компоненты которого работают в среде Windows.
Access предназначен для выполнения , по крайней мере, пяти основных задач:
1. Управление базами данных. Используя различные меню и панели инструментов, можно получать непосредственный доступ к данным из самых разных источников компьютера и сетей.
2. Мощное средство отчетности. Даже если приложение Access не используется для ввода и извлечения данных, средства отчетности Access вполне можно применять для анализа данных. Отчеты Access гораздо легче сортировать и просматривать, чем отчеты других приложений.
3. Средство для создания динамических Web-страниц. Можно создавать Web-страницы, в которых изменения баз данных, лежащих в их основе, будут отражаться автоматически.
4. Среда для разработки приложений баз данных. Несмотря на то, что с помощью других инструментов разработки можно создавать более компактные и быстрые приложения, посредством одной только программы Access создаются полнофункциональные приложения баз данных, включая приложения клиент/сервер. Располагая программой Office Developer, можно распределять эти приложения среди пользователей, не имеющих собственных копий Access.
5. Инструмент для создания прототипов приложений. Даже если для создания приложений решено использовать Visual Basic, C++ или какой-то иной язык, с помощью Access можно испытывать прототипы создаваемых приложений.
Access имеет инструментальные средства для создания: локальной БД, централизованной БД в локальной сети с файловым сервером, проектов (клиентских приложений, работающих с базами данных Microsoft SQL Server 6.5 или Microsoft SQL Server 7.0).
Access поддерживает механизм OLE - связывание и внедрение объектов различных приложений Windows в БД. Позволяет импортировать данные таблиц: других баз данных Access; баз данных dBase, Microsoft FoxPro, Paradox, Oracle, Microsoft SQL Server; табличного процессора Microsoft Excel. Внешними для Access могут быть также: данные почтовой программы Microsoft Exchange; таблицы и списки HTML на сервере локальной, корпоративной сети (сети масштаба предприятия), сети Internet. Может экспортировать объекты БД в другие приложения.
Access позволяет осуществлять восстановление БД, сжатие БД, репликацию БД, защиту БД. Дает возможность конвертировать БД из предыдущих версий в текущую и наоборот.
СУБД Access ориентирована на работу с объектами БД, к которым относятся таблицы, запросы, формы, отчеты, страницы, макросы и модули.
Таблица - это основная структура, предназначенная для хранения информации в БД. По терминологии СУБД ее строки - это записи, а столбцы - поля БД. Записи идентифицируются по некоторой уникальной характеристике, включающей одно или несколько полей и называемой ключом.
Запрос - это требование на: отбор данных, хранящихся в таблицах; выполнение вычислений над данными; изменения в БД.
Форма - созданный на экране шаблон, используемый, главным образом, для ввода, просмотра и редактирования записей БД.
Отчет - отображение на принтере или на экране информации из БД в виде, удобном для ее восприятия и анализа пользователем.
Страница доступа к данным - диалоговая Web-страница, которая поддерживает динамическую связь с БД и позволяет просматривать, редактировать и вводить данные в базу, работая в окне браузера Internet Explorer 4.0 или Internet Explorer 5.0.
Макрос - есть последовательность макрокоманд для автоматизации выполнения операций в среде Access без программирования.
Модуль - это программа для работы с БД, написанная на языке Visual Basic for Applications 6.0 (VBA).
Объекты БД могут быть объединены в именованные группы объектов по функциональному или иному признаку.
Все объекты, за исключением страниц доступа к данным, можно хранить в одном файле - файле БД с расширением .mdb. Это упрощает их перенос с компьютера на компьютер, облегчает создание связанных объектов, проверку целостности данных. Страницы сохраняются как самостоятельные файлы с расширением .html отдельно от БД, с которой они связаны. Отчеты можно сохранять в файле с расширением .snp (формат снимка отчета) и распространять среди пользователей по электронной почте.
С целью защиты форм, отчетов и модулей VBA БД может быть сохранена в файле приложения с расширением .mde. При этом БД сжимается, оптимизируется использование памяти и повышается быстродействие БД. Проект размещается в файле с расширением .adp на компьютере пользователя.
СУБД Access имеет разнообразные инструментальные средства, дающие возможность непрофессиональным пользователям решать задачи без использования языка запросов или языка программирования VBA.
Для автоматизации создания объектов БД (за исключением модулей) в Access используются специализированные средства, называемые конструкторами. Конструктор предоставляет пользователю ряд инструментальных средств, с помощью которых можно быстро и просто создавать и модифицировать объекты БД. Для конструирования макета формы, отчета, страницы используется панель элементов, появляющаяся при вызове конструктора. В Access имеется также множество мастеров, используемых для создания объектов БД и выполнения специальных операций. Мастер задает пользователю ряд вопросов и на основе его ответов строит законченный объект БД или осуществляет определенную операцию.
3. Создание реляционной базы данных
3.1 Общее понятие о реляционной базе данных
База данных Access является реляционной базой данных. Такая база данных состоит из взаимосвязанных реляционных таблиц. На этапе проектирования базы данных должна быть определена логическая структура базы данных для выбранной предметной области. Проект логической структуры БД устанавливает состав реляционных таблиц, их структуру и логические связи между таблицами. При формировании структуры каждой таблицы определяется совокупность полей (столбцов), для каждого из которых даются описание типа, размера данных и других свойств. Кроме того, должен быть указан уникальный ключ таблицы, который может состоять из одного или нескольких полей.
При проектировании базы данных, отвечающей требованиям нормализации, между таблицами определяются логические связи типа 1:М. Такие связи позволят осуществлять в Access автоматическое поддержание связной целостности и непротиворечивости данных в базе.
Для проектирования базы данных необходимо располагать описанием выбранной предметной области, которое должно охватывать реальные объекты и процессы, определять все необходимые источники информации для обеспечения предполагаемых запросов пользователя и решаемых в приложении задач. Следует заметить, что чаще всего базы данных создаются средствами СУБД в области организационно-экономического управления.
Определение состава и структуры данных, которые должны быть загружены в базу данных, осуществляется на основе анализа предметной области. Структура данных предметной области может отображаться информационно-логической моделью (ИЛМ). Если при построении такой модели обеспечены требования нормализации данных и она соответственно представлена в каноническом виде, далее легко определяется проект логической структуры нормализованной базы данных. На основе канонической модели можно создать реляционную базу без дублирования данных.
При разработке модели данных предметной области могут использоваться два подхода. В первом подходе (аналитическом или процессном) сначала формулируются основные задачи, для решения которых строится база, выявляются информационные потребности задач приложения пользователя, и соответственно определяются состав и структура информационных объектов модели, а также связи между ними. При втором подходе (интуитивном) сразу устанавливаются типовые объекты предметной области и их взаимосвязи. Наиболее рационально сочетание обоих подходов. Это связано с тем, что на начальном этапе, как правило, нет исчерпывающих сведений обо всех задачах. Использование такой технологии тем более оправдано, что гибкие средства создания реляционной базы данных в Access позволяют на любом этапе разработки внести изменения в базу данных и модифицировать ее структуру без ущерба для введенных ранее данных.
В процессе разработки канонической модели данных предметной области для проектирования реляционной базы данных необходимо выделить информационные объекты (ИО), соответствующие требованиям нормализации данных, и определить связи между ИО с типом отношений один-ко-многим (1:М)
При определении проекта логической структурой реляционной базы данных каждый информационный объект канонической модели предметной области адекватно отображается реляционной таблицей, а связям между информационными объектами соответствуют логические связи между парой соответствующих таблиц. Такие связи устанавливаются по уникальному ключу одной из этих таблиц, которая является главной в связи. Во второй таблице, которая является подчиненной, поле связи может быть либо частью ее уникального ключа, либо быть не ключевым.
В процессе создания базы данных на компьютере сначала осуществляется конструирование ее таблиц средствами Access. Далее создается схема данных, в которой устанавливаются логические связи таблиц. В схеме данных базы могут быть заданы параметры поддержания связной целостности данных, если модель данных была разработана в соответствии с требованиями нормализации.
Связная целостность данных означает, что в базе данных установлены и корректно поддерживаются взаимосвязи между записями разных таблиц при загрузке, добавлении и удалении записей в связанных таблицах, а также при изменении значений ключевых полей. При обеспечении связной целостности в подчиненной таблице не может существовать запись, для которой отсутствует связанная запись в главной таблице.
После формирования в Access схемы данных можно приступать к вводу данных в базу -- загрузке с документов предметной области, являющихся источниками данных. В практических приложениях пользователя обычно не используется ввод непосредственно в таблицы, а применяются создаваемые; специально экранные формы, выполняющие роль интерфейса пользователя.
Проектирование базы данных, основанное на построении нормализованной модели данных предметной области, позволяет легко получить логическую структуру реляционной базы данных Access, в которой автоматически поддерживается целостность и непротиворечивость данных.
Очевидно, что отправной точкой в процессе работы с любой СУБД является создание файла (или группы файлов) базы данных. На рис. 3.1 показано окно, которое появляется после создания новой базы.
Рисунок 3.1 Главное окно базы данных в Access
Основные разделы главного окна соответствуют типам объектов, которые может содержать база данных Access. Это Таблицы, Запросы, Отчеты, Макросы и Модули. Заголовок окна содержит имя файла базы данных. В данном случае он называется TradeTest.
Интерфейс работы с объектами базы данных унифицирован. По каждому из них предусмотрены стандартные режимы работы:
- Создать - предназначен для создания структуры объектов;
- Конструктор - предназначен для изменения структуры объектов;
- Открыть (Просмотр, Запуск) - предназначен для работы с объектами базы данных.
3.2 Создание реляционной базы данных
Создание файла базы данных выполняется следующим образом. Необходимо запустить СУБД Access. Затем выполните следующее:
· установить в стартовом окне переключатель в положение Новая база данных и нажать [ОК]. Если это окно не отображено, то необходимо выполнить команду Файл/Создать и в появившемся окне Создание на вкладке Общие произвести двойной щелчок по значку "База данных";
· в окне Файл новой базы данных указать, на каком диске, в какой папке требуется создать файл базы данных и ввести нужное имя файла, а затем нажать кнопку [Создать].
Так как реляционная база данных основывается на таблицах, то следующим шагом создание базы данных, будет создание таблиц с информацией.
Таблицы -- основной объект Access. Список таблиц, составляющих базу данных приложения, появляется в окне базы данных при первом открытии приложения. Кроме этого, Access создает системные таблицы, в которых хранится информация обо всех объектах приложения, и эти таблицы при необходимости также могут отображаться в окне базы данных.
Для начала создается описание таблицы. Нажав кнопку Создать и выбрав в появившемся вслед диалоговом окне режим Конструктор, мы попадаем в окно, предназначенное для ввода описания структуры создаваемой таблицы. Пример построения таблиц для проектируемой базы данных см. в Приложениях 1-4.
Прежде чем заносить данные в таблицы, нужно определить структуру этих таблиц. Под этим понимается не только описание наименований и типов полей, но и ряд других характеристик (например, формат, критерии проверки вводимых данных). Кроме описания структуры таблиц, обычно задаются связи между таблицами. Связи в реляционных базах данных определяются по совпадению значений полей в разных таблицах. Например, клиенты и заказы связаны отношением "один-ко-многим", т. к. одной записи в таблице, содержащей сведения о клиентах, может соответствовать несколько записей в таблице заказов этих клиентов. Если же рассмотреть отношение между преподавателями и курсами лекций, которые они читают, это будет отношение "многие-ко-многим", т. к. один преподаватель может читать несколько курсов, но и один курс может читаться несколькими преподавателями. И последний тип связей между таблицами -- это отношение "один-к-одному". Такой тип отношений встречается гораздо реже. Как правило, это бывает в двух случаях: запись имеет большое количество полей, и тогда данные об одном типе объектов разносятся по двум связанным таблицам, или нужно определить дополнительные атрибуты для некоторого количества записей в таблице, тогда создается отдельная таблица для этих дополнительных атрибутов, которая связывается отношением "один-к-одному" с основной таблицей.
Как видно из рис. 3.2, процесс описания атрибутов поля начинается с присвоения ему имени (идентификатора). Далее необходимо определить тип поля, что, очевидно, должно делаться, исходя из содержания тех данных, которые будут в нем храниться.
Рисунок 3.2 Создание описания структуры таблицы
На завершающем этапе процесса проектирования структуры таблицы происходит задание ключей и индексов. В первом случае достаточно выделить строки, которые должны составить ключевое выражение, и щелкнуть мышью по пиктограмме Ключ на панели инструментов.
Ключевое поле таблицы помечается специальным значком -- ключик в поле выделения в левой части окна. Чтобы выделить поле, достаточно просто щелкнуть мышью по строке, в которой описывается данное поле. При этом в нижней части окна будут показаны параметры именно для этого поля. Перемещаться между столбцами в верхней панели окна можно с помощью клавиши <Таb>, а для перемещения по списку полей вверх и вниз пользуйтесь клавишами со стрелками. С помощью клавиши <F6> можно перемещаться между панелями.
Эффективным методом решения задач контроля корректности входных данных является ограничение множества допустимых значений поля некоторым списком. Средством решения этой проблемы в Access является задание подстановочного списка значений для поля. Для этого следует выбрать вкладку Подстановка в окне Свойства поля, далее для свойства Тип элемента управления задать значение Список.
После создания описания структуры таблицы можно перейти в режим непосредственного ввода в нее данных. Важным преимуществом интерфейса СУБД Access является продуманная гибкая система перехода от режима Конструктора к режиму ввода данных в таблицу (Режим таблицы). Такой переход можно осуществить, щелкнув мышью по пиктограмме Вид, расположенной на панели инструментов, либо выбрав функцию меню Вид > Режим таблицы.
Результат построения таблиц для проектируемой базы данных см. в Приложениях 5-8.
На основе созданных таблиц в дальнейшем создаются базы запросы, отчеты, пользовательские формы, что и составляет реляционную базу данных.
4. Формирование запросов к базе данных
4.1 Общее понятие запросов
Запрос - это требование на извлечение данных из таблиц базы, на выполнение вычислений над данными, на внесение изменений в базу данных.
Запрос может служить источником данных для форм, отчетов и страниц доступа к данным.
СУБД Access позволяет создавать запросы трех типов: запросы на выборку, перекрестные запросы, запросы на внесение изменений в базу данных.
Запрос на выборку является наиболее часто используемым типом запроса. Его результатом является динамическая таблица, которая может быть просмотрена, проанализирована. Запрос на выборку дает возможность:
- включать в результирующую таблицу поля из одной или нескольких таблиц в нужном порядке;
- выбирать записи, удовлетворяющие условиям отбора;
- осуществлять вычисления над полями базы данных;
- группировать записи и находить для групп записей или для всех записей итоговые значения по некоторым полям с помощью статистических функций: Sum - сумма значений поля, Avg - среднее значений поля, Max - максимальное из значений поля, Min - минимальное из значений поля, Count - число значений поля и др.
Разновидностью запроса на выборку является запрос с параметрами -- это запрос, который при выполнении отображает в собственном диалоговом окне приглашение ввести интересующее пользователя значение критерия отбора записей.
Перекрестный запрос представляет собой специальный запрос итогового типа. Он отображает результаты итоговых статистических расчетов над значениями некоторого поля в виде перекрестной таблицы. В ней значения одного или нескольких столбцов слева образуют заголовки строк. Заголовки столбцов представляют собой значения определенного поля, а на пересечении строк и столбцов находятся итоговые значения.
Существует четыре типа запросов на внесение изменений в базу данных:
1) запрос на удаление - удаляет группу записей из одной таблицы или нескольких взаимосвязанных таблиц базы данных, для которых задано каскадное удаление связанных записей;
2) запрос на обновление - служит для изменения значений полей таблицы;
3) запрос на добавление - производит добавление записей из одной таблицы в другую таблицу;
4) запрос на создание таблицы - создает новую таблицу на основе всех или части данных из одной или нескольких таблиц базы данных.
СУБД Access позволяет создавать запросы с помощью Мастеров и с помощью Конструктора. Мастера используются для создания определенных запросов. С помощью Конструктора можно создать любой запрос.
4.2 Создание запроса выбора
Для создания запроса выбора с помощью Конструктора необходимо открыть окно Конструктора запроса, выполнив действия:
Окно БД - объект Запросы - [Создать] - окно Новый запрос - выбрать Конструктор - окно Добавление таблицы - выбрать таблицы-источники запроса - [Закрыть].
Окно Конструктора запроса имеет вид как на рис. 4.1.
Рис. 4.1 Окно Конструктора запроса
Оно разделено на две панели.
Верхняя панель содержит схему данных запроса. В ней представлены списки полей, выбранных в качестве источника запроса таблиц и запросов. Если ранее была создана связь между этими таблицами, то она показывается на схеме данных. В противном случае может отображаться связь, автоматически созданная системой Access. Пользователь может сам установить новую связь между таблицами.
Нижняя панель есть бланк запроса по образцу (QBE-запроса). Он представлен в виде таблицы, предназначенной для определения структуры результирующей таблицы запроса и задания условий отбора данных из таблиц. Каждый столбец бланка относится к одному полю таблицы. Строки бланка имеют следующее назначение:
· Поле - указывает имена полей, участвующих в формировании запроса;
· Имя таблицы - указывает имена таблиц, которым принадлежат эти поля;
· Сортировка - дает возможность отсортировать записи в результирующей таблице запроса;
· Вывод на экран - позволяет управлять отображением полей в этой таблице;
· Условие отбора - служит для задания условий отбора записей;
· или - позволяет объединять условия отбора логической операцией ИЛИ. При этом условия отбора могут указываться в нескольких строках бланка запроса.
Включение отдельных полей в бланк запроса можно выполнить одним из следующих способов:
· перетащить поле из списка полей в крайнюю слева свободную клетку строки Поле;
· дважды щелкнуть по имени поля в списке полей;
· щелкнуть в клетке строки Поле и из раскрывающегося списка выбрать нужное поле.
Включение в бланк запроса всех полей таблицы можно выполнить, если:
· дважды щелкнуть по имени таблицы и перетащить все выделенные поля в клетку строки Поле;
· перетащить звездочку, стоящую под заголовком таблицы, в клетку строки Поле. При этом в клетке отобразится только имя таблицы со звездочкой, но в результат запроса будут включены все поля таблицы.
Для очистки отдельных столбцов бланка запроса используется команда - Правка/Удалить столбцы.
Для очистки всего бланка запроса служит команда - Правка/Очистить бланк.
Для формирование запроса на вывод полей из одной или нескольких таблиц перетаскиваются из списков полей в строку Поле только те поля, которые должны присутствовать в результирующей таблице запроса, или все поля всех таблиц, а затем в сроке Вывод на экран отмечаются флажками только нужные.
Формирование запроса с применением сортировки.
Сортировка возможна по одному или нескольким полям одновременно. Для сортировки по нескольким полям поля располагаются в бланке запроса в том порядке, в котором требуется выполнять сортировку. В Access записи сортируются сначала по самому левому полю, затем по полю, расположенному в следующем столбце справа и т.д. Для задания порядка сортировки необходимо щелкнуть в строке Сортировка для поля, по которому сортируются записи, и из раскрывающегося списка выбрать - по возрастанию или по убыванию. Пример создания запроса с применением сортировки см. в Приложении 9-10.
Формирование запроса с условиями отбора.
Условия отбора -- это ограничения, накладываемые на запрос для определения записей, включаемых в результирующую таблицу запроса. Они задаются выражениями в строках Условие отбора, или.
Если выражения вводятся в несколько клеток одной строки Условие отбора, то они автоматически объединяются с помощью логического оператора And. Если выражения вводятся в разные строки бланка запроса, то Access объединяет их логическим оператором Or. Пример создания запроса с условием для создаваемой базы данных см. в Приложении 11-12.
В условии отбора может быть использована конструкция Between (между). Например, Between 100 and 200. Результат построения запроса с использованием конструкции Between см. в Приложении 13-14.
Формирование запроса с вычисляемым полем.
Для создания вычисляемого поля в пустую клетку строки Поле вводится имя вычисляемого поля с двоеточием, после которого - выражение. Например,
СТОИМОСТЬ: [ЦЕНА]*[КОЛИЧЕСТВО]
Если выражение сложное, то для его создания целесообразно использовать построитель выражений.
Для проектируемой базы данных запрос с вычисляемым полем имеет вид - см. в Приложении 15-16.
Формирование запроса с группировкой.
Часто требуется в таблице видеть не все записи, а только итоговые значения по группам записей. Расчет итогов для некоторых полей групп производится с помощью статистических функций, которые были описаны выше.
Для создания запроса с группировкой выполняется следующее:
· перетаскивается в первую клетку строки Поле то поле, по которому производится группировка записей. Затем перетаскиваются в последующие клетки поля, по которым подводятся итоги;
· вводится команда Вид / Групповые операции. В бланке запроса появляется новая строка Групповая операция, в которой для всех полей указано Группировка;
· в строке Групповая операция для полей, по которым подводятся итоги, производятся щелчки и из раскрывающегося списка выбирается требуемая статистическая функция.
Формирование запроса с параметрами
Если необходимо часто выполнять один и тот же запрос выбора, меняя только в условиях отбора значения полей, то целесообразно создать запрос с параметрами. В строках Условие отбора, или для полей, играющих роль параметров, вводится в квадратных скобках текст приглашения на ввод интересующих пользователя значений этих полей. Этот текст будет выводиться в диалоговом окне "Введите значение параметра при выполнении запроса". Результат построения запроса с параметрами приведен в Приложении 17-18.
4.3 Создание перекрестного запроса
Создание перекрестного запроса с помощью Конструктора начинается с открытия окна Конструктора запроса. В этом окне в бланк запроса последовательно перетаскиваются:
· поля, значения которых будут заголовками строк перекрестной таблицы;
· поле, значения которого будут заголовками столбцов перекрестной таблицы;
· поле, по которому подводится итог с использованием статистической функции.
Затем выполняется команда Запрос / Перекрестный. В результате в бланке запроса появятся две новые строки: Групповая операция и Перекрестная таблица. В строке Перекрестная таблица для полей со значениями в роли заголовков строк выбирается из раскрывающегося списка значение Заголовки строк, а для поля со значениями в роли заголовков столбцов - Заголовки столбцов. В строке Групповая операция для поля, по которому подводится итог, из раскрывающегося списка выбирается необходимая статистическая функция.
Результат создания перекрестного запроса представлен в Приложении 19-20.
4.4 Создание запросов действия
Формирование запроса на создание таблицы БД.
После открытия окна конструктора запроса вводится команда Запрос / Создание таблицы
В появившемся окне Создание таблицы указывается имя создаваемой таблицы и куда ее следует поместить - в текущую БД или в другую БД. Затем из списков полей перетаскиваются в бланк запроса поля, которые должны быть в этой таблице, и при необходимости задаются условия отбора записей. После выполнения запроса новая таблица будет в списке таблиц окна БД.
Формирование запроса на обновление полей таблицы БД
После открытия окна конструктора запроса вводится команда Запрос / Обновление в бланке запроса появится новая строка Обновление. Затем в бланк запроса перетаскиваются все поля таблицы, и для полей, подлежащих обновлению, в строке Обновление задаются выражения, значения которых будут новыми значениями обновляемых полей. При необходимости обновления значений полей только в некоторых записях задаются условия отбора записей.
Формирование запроса на добавление записей к таблице БД.
При открытии окна конструктора запроса в качестве источника запроса указывается таблица, из которой добавляются записи в другую таблицу. Записи таблицы-источника должны содержать такие же поля, что и пополняемая таблица БД. В окне конструктора запроса вводится команда Запрос / Добавление. Появится диалоговое окно Добавление, в котором требуется указать имя пополняемой таблицы и где эта таблица находится - в текущей БД или в другой БД. Кроме того, в бланке запроса появится новая строка Добавление.
Затем перетаскиваются те поля из списка полей таблицы-источника, которые совпадают с полями пополняемой таблицы. Их имена Access автоматически укажет в строке Добавление как имена полей пополняемой таблицы.
Формирование запроса на удаление записей из таблицы БД.
Если между таблицами установлена связь с обеспечением целостности данных, но без каскадного удаления записей, то прежде составляется запрос на удаление записей из подчиненной таблицы, а затем - из главной.
В этом случае при удалении записей из подчиненной таблицы в окне конструктора запроса вводится команда Запрос / Удаление. В результате в бланке запроса появится новая строка Удаление. Тогда из списка полей подчиненной таблицы перетаскивается в бланк запроса символ звездочки (*), после чего в строке Удаление для этого поля отобразится значение Из. Затем из списка полей главной таблицы перетаскиваются поля, участвующие в условии отбора удаляемых записей, и для них в строке Удаление появится значение Условие. После этого задаются условия отбора удаляемых записей.
Если связь между таблицами с обеспечением целостности данных и с каскадным удалением записей, то создается запрос на удаление записей только из главной таблицы.
При составлении запроса на удаление записей из главной таблицы (в обоих случаях) в окне конструктора запроса вводится команда Запрос / Удаление.
В бланк запроса перетаскиваются поля, участвующие в условиях отбора записей на удаление, и задаются условия отбора.
4.5 Выполнение и сохранение запроса
После формирования запроса его необходимо выполнить. Из окна Конструктора запроса это можно сделать, введя одну из команд:
· Запрос / Запуск
· Вид / Режим таблицы
Если результаты выполнения запроса не удовлетворяют, то можно вернуться к окну Конструктора запроса для его модификации по команде Вид / Конструктор. В противном случае результат запроса можно сохранить с помощью команды Файл / Сохранить или произведя закрытие окна Конструктора запроса.
5. Создание форм пользователя
СУБД Access позволяет создавать такие объекты БД, как формы. Формы служат удобным средством для ввода, просмотра и редактирования информации БД.
Формы для ввода представляют бланк, подлежащий заполнению, и дают возможность осуществить контроль вводимых данных и исключить ввод неверных. При просмотре и редактировании имеют дело с маской, накладываемой на набор данных. Маска-форма позволяет ограничить доступ пользователя к информации БД, заблокировав отдельные (служебные или засекреченные) поля или записи.
Формы есть простые и составные (включающие другие формы). Они могут содержать различные элементы: поля БД и подписи к ним, списки, флажки, переключатели, кнопки, вкладки и др. В них возможны вычисления для отдельных записей и их групп, а также наглядное графическое представление данных в виде диаграмм.
Форму можно спроектировать на базе одной или нескольких таблиц и/или запросов. На основе одной таблицы или запроса можно построить несколько форм. В форме имена полей берутся из описания таблицы, а сами поля пользователь располагает в соответствии со своими вкусами и требованиями и вносит различные элементы оформления: линии, рисунки, заливку и др.
Форма создается "вручную" - с помощью конструктора форм, автоматизированным способом - с помощью Мастера форм и автоматически - с использованием автоформы. Конструктор форм предоставляет пользователю набор инструментов, с помощью которого пользователь может создать форму соответственно своим вкусам и требованиям. Мастер форм руководит процессом проектирования форм. Он задает пользователю вопросы о структуре и оформлении формы, предлагая на выбор несколько вариантов. В результате диалога пользователя и Мастера форм появляется "готовая к употреблению" форма. Автоформа на основе выбранной таблицы автоматически создает одну из форм: в столбец, ленточную, табличную.
Окно конструктора формы содержит следующие средства конструирования:
· панель Конструктора с набором графических кнопок, которая включается/выключается по команде Вид/Панели инструментов;
· разделы проекта, в которых размещают различные графические объекты, определяющие вид и содержание формы. Эти графические объекты называют элементами управления;
· панель элементов управления, включаемая/выключаемая по команде Вид/Панель элементов
· список полей таблицы или запроса, служащих источником данных для формы. Он включается/выключается по команде Вид/Список полей;
· сетка, отображаемая в разделах проекта для удобства проектирования. Она включается/ выключается по команде Вид/Cетка;
· линейки - горизонтальная и вертикальная, включаемые/выключаемые по команде Вид/Линейка. Они также предназначены для удобства проектирования.
По умолчанию в окне Конструктора формы выводится раздел проекта Область данных, в котором размещают поля БД из таблицы или запроса, а также вычисляемые поля. Кроме данного раздела при конструировании могут быть востребованы и другие разделы:
Заголовок формы и Примечание формы, включаемые/выключаемые попарно соответственно по команде Вид - Заголовок/Примечание формы.
Верхний колонтитул и Нижний колонтитул, включаемые/выключаемые попарно по команде Вид / Колонтитулы.
Если, например, в окне Конструктора формы включены все названные разделы, то они располагаются в рабочей области этого окна в такой последовательности, как показано на рис. 5.1.
Рис.5.1 Расположение разделов проекта формы в окне конструктора формы
Заголовок формы содержит сведения, общие для всех записей, такие как название формы, дата и время. Примечание формы отображает сведения, общие для всех записей, такие как инструкции по работе с формой, командные кнопки, общие суммы в счетах. Верхний колонтитул и Нижний колонтитул используются в случае конструирования формы табличного вида. Тогда в Верхнем колонтитуле отображаются названия столбцов, а в Нижнем колонтитуле - номер страницы, дата.
Разделы проекта формы наполняются различными графическими объектами - элементами управления, используемыми для отображения данных, выполнения действий или в качестве украшений. Элементы управления вводятся в форму при помощи графических кнопок панели элементов, изображенной на рис. 5.2.
Рисунок 5.2 Панель элементов управления
Элементы управления есть связанные и несвязанные. Связанный элемент управления присоединен к полю базовой таблицы или запроса. Такие элементы управления используются для просмотра, ввода или редактирования значений из полей БД. Ввод связанного элемента управления в проект формы осуществляется путем перетаскивания из окна со списком полей нужного поля в раздел Область данных.
В результате появляются два прямоугольника - подпись поля и поле. Например:
Маркеры перемещения служат для отдельного перемещения подписи, поля. При установке на них указателя мыши появляется изображение руки с вытянутым указательным пальцем и тогда следует выполнить перемещение.
Для одновременного перемещения подписи и поля указатель мыши устанавливается на границу выделенной подписи или выделенного поля и, когда он принимает вид раскрытой ладони, производят перетаскивание. Для удаления подписи осуществляют ее выделение и нажимают клавишу Delete; для удаления поля с подписью выделяют поле и нажимают клавишу Delete.
Для несвязанных элементов управления источника данных не существует. Такие элементы управления используются для отображения линий, прямоугольников, рисунков. Ввод в проект формы (отчета) несвязанного элемента управления осуществляется так: на панели элементов производится щелчок по кнопке нужного элемента управления, а затем щелчок в том разделе проекта, где требуется разместить этот элемент.
Навыки конструирования формы предполагают умение выделения группы элементов управления. Оно производится путем щелчков по элементам управления, входящим в группу, при нажатой клавише Shift. Выделить группу смежных элементов можно и путем очерчивания рамки вокруг этой группы. Чтобы изменить размер элементов группы, произвести их выравнивание, изменить интервал между ними, необходимо воспользоваться пунктом меню Формат.
Подобные документы
Изучение реляционной модели данных. Выявление потребности задач в данных и определение состава и структуры информационных объектов. Построение концептуальной модели предметной области. Создание форм, запросов и отчетов с помощью конструктора запросов.
курсовая работа [6,3 M], добавлен 09.10.2021Рассмотрение теоретических основ проектирования. Анализ предметной области и разработка таблиц базы данных. Заполнение таблиц, поиск данных с помощью фильтра. Создание форм, разработка запросов. Создание и настройка отчетов, составление приложения.
курсовая работа [2,8 M], добавлен 01.06.2014Особенности разработки инфологической модели и создание структуры реляционной базы данных. Основы проектирования базы данных. Разработка таблиц, форм, запросов для вывода информации о соответствующей модели. Работа с базами данных и их объектами.
курсовая работа [981,4 K], добавлен 05.11.2011Разновидности систем управления базами данных. Анализ предметной области. Разработка структуры и ведение базы данных. Структурированный язык запросов SQL. Организация выбора информации из базы данных. Общие принципы проектирования экранных форм, макросов.
курсовая работа [3,1 M], добавлен 26.02.2016Компоненты реляционной базы данных Microsoft Access. Создание структуры таблиц и определение связей между ними. Проектирование форм для сводных таблиц и запросов с помощью конструктора окон. Разработка и создание автоотчетов и запросов на выборку данных.
реферат [3,3 M], добавлен 29.01.2011Исследование характеристик и функциональных возможностей системы управления базами данных Microsoft Office Access. Определение основных классов объектов. Разработка базы данных "Делопроизводство". Создание таблиц, форм, запросов, отчетов и схем данных.
реферат [1,3 M], добавлен 05.12.2014Характеристика Microsoft Access. Создание структуры базы данных. Определение основных тем таблиц базы данных и информации, которую будут содержать поля таблиц. Создание таблиц, запросов, форм и отчетов. Страницы доступа к данным. Макросы и модули.
курсовая работа [1,1 M], добавлен 09.12.2012Создание базы данных "Компьютерные игры": разработка и дизайн интерфейса, наполнение таблиц информацией, формирование идентификаторов. Использование системы управления базами данных Microsoft Access для составления стандартных запросов, форм и отчетов.
курсовая работа [715,7 K], добавлен 29.01.2011Осуществление анализа предметной области и определение модели базы данных. Реализация базы данных в среде Microsoft Access. Создание и исследование формы ввода информации, запросов с условиями выбора, диаграмм по результатам вычислений и отчетов.
курсовая работа [246,1 K], добавлен 19.10.2013Базы данных и системы управления ими. Разработка базы данных "Торговая организация", позволяющей вести учет имеющегося товара, покупателей и поставки товара. Проектирование таблиц, запросов и форм. Создание отчетов. Обеспечение доступа к информации.
курсовая работа [1,2 M], добавлен 21.11.2014