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

Лабораторная работа №5

1. Создайте новую базу данных
2. Создайте необходимые таблицы, согласно предметной области.
3. Установите типы данных (счетчик, текстовый, числовой и т.д.), описание и другие необходимые свойства полей (размер поля, маску ввода, подпись, значение по умолчанию и т.д.) созданных таблиц.
4. Определите первичные ключи в созданных таблицах.
5. Определите необходимые связи между таблицами, задайте необходимые параметры обеспечения целостности данных и вид объединения.
6. В схеме данных проверьте правильность созданных таблиц и связей между ними.
7. Заполните созданные таблицы данными (минимум 10 записей на таблицу).
8. Создайте необходимые запросы на выборку, выполняющие основные требования к функциям системы:
1) Создать запрос на выборку. Отображать все фамилии студентов, которые получили оценки отл/A по всем дисциплинам (Успеваемость студентов).
2) Создать параметрический запрос. Создать запрос, в результате которого будет выводиться Фамилия студента, Название группы, Дисциплина и Оценка (отл/А), полученная студентом по дисциплине.
9. Оформите отчет о выполнении лабораторной работы.

2. 1. Загрузить Microsoft Access,выполнив действия: Пуск—> Программы — Microsoft Access (или выполнив щелчок на соответствующей пиктограмме на панели Microsoft Office).

3. 2. Создать новую базу данных
После загрузки MS Access на экране появится главное окно. При первом запуске Access в главном окне выводится область задач в режиме «Приступая к работе», с помощью которой можно открыть существующие БД и «Создать файл».
При выборе команды «Создать файл» в области задач изменится режим на «Создание файла».
При выборе команды «Новая база данных» откроется окно диалога «Файл новой базы данных», в котором необходимо выбрать имя диска и директории для хранения БД, а также имя БД (тип файла устанавливается по умолчанию «Базы данных Microsoft Office Access») и щелкнуть на кнопке «Создать», будет сохранен файл с расширением .mdb
В главном окне приложения появится окно БД с назначенным именем, например «Деканат: база данных (формат Access 2000).

4. 3. Создать структуры таблиц
В появившемся на экране окне БД Деканат: база данных выбрать вкладку Таблицы и щелкнуть на пиктограмме Конструктор на панели инструментов. Появится окно Конструктора таблиц.
3.1. Создать структуру таблицы Группы студентов.
В окне Конструктора таблиц заполнить разделы Имя поля, Тип данных и Свойства поля в соответствии с таблицей 1.
Для перехода от раздела к разделу использовать клавишу <ТаЬ> или щелчок мышью на нужной ячейке.
В разделе Тип данных для изменения типа раскрыть окно выбора типа, выполнив щелчок по кнопке раскрытия списка, затем выполнить щелчок в строке, содержащей соответствующий тип.
При этом в нижней части экрана в разделе Свойства поля появляется информация о свойствах данного поля. При необходимости туда можно вносить изменения, выполнив щелчок в соответствующей строке, удалив предыдущее значение и введя новое. Дополнительно можно задать формат поля, условие на значение и т.д.
После заполнения разделов необходимо задать ключевое поле. В качестве ключевого поля выбрать поле КодГруппы.
Для создания ключевого поля выделить поле КодГруппы, выполнив щелчок слева от имени поля на полосе выделения. Выбрать в меню Правка — Ключевое поле или выполнить щелчок по пиктограмме Ключевое поле на панели инструментов приложения. Слева от имени поля появится изображение ключа.
После создания структуры таблицы необходимо сохранить ее. Файл. — Сохранить, или. Сохранить, как... В окне диалога Сохранение ввести имя для сохранения созданной таблицы: Группы студентов, затем ОК.
3.2. Создать структуру таблицы Студенты:
В окне Конструктора таблиц заполнить разделы Имя поля, Тип данных и Свойства поля в соответствии с таблицей 2.
Для поля КодГруппы выбрать тип Мастер подстановок. Это позволит облегчить заполнение данными этого поля, так как в таблице Студенты будут отображаться не коды группы, а их названия. После выбора типа Мастер подстановок откроется первое диалоговое окно Создание подстановки
В этом окне выбирается способ, которым столбец подстановки получит свои значения: из таблицы или запроса, затем щелчок по кнопке Далее.
В следующем диалоговом окне выбирается таблица, содержащая столбец подстановки – Группа студентов, щелчок по кнопке Далее.
В следующем окне выбирается поле (Название), используемое в качестве столбца подстановки, и щелчком по кнопке переносится в окно Выбранные поля. Щелчок по кнопке Далее .
Следующее окно содержит сообщения о том, какие действия выполнить со столбцом в случае необходимости. Щелчок по кнопке Далее .
В следующем окне выполнить щелчок по кнопке Готово. Появится сообщение о том, что перед созданием связи необходимо сохранить таблицу. Для этого выполнить щелчок по кнопке Да.
В разделе Тип данных будет указан тип числовой, т.е. тип, соответствующий типу поля подстановки из таблицы Группа студентов.
Для поля КодГруппы установить свойство - Индексированное поле. Для этого в разделе Свойство поля выбрать строку Индексированное поле. Выполнить щелчок по кнопке раскрытия списка и выбрать строку - Да (Допускаются совпадения).
После создания структуры таблицы необходимо задать ключевое поле - КодСтудента.
Сохранить структуры таблицы, введя имя таблицы, Студенты.
3.3. Создать структуру таблицы Дисциплины.
В окне Конструктора таблиц заполнить разделы Имя поля, Тип данных и Свойства поля в соответствии с таблицей 3.
После создания структуры таблицы необходимо задать ключевое поле - КодДисциплины.
Сохранить структуры таблицы, введя имя таблицы, Дисциплины.
3.4. Создать структуру таблицы Успеваемость.
В окне Конструктора таблиц заполнить разделы Имя поля, Тип данных и Свойства поля в соответствии с таблицей 4.
Для полей КодДисциплины и КодСтудента выбрать тип Мастер подстановок. Это позволит облегчить заполнение данными этих полей, так как в таблице Успеваемость будут отображаться не коды дисциплины и студента, а их названия
В таблице необходимо выбрать поля КодДисциплины и КодСтудента в качестве индексированных полей. Для свойства Индексированное поле установить значение Да (Допускаются совпадения).
После создания структуры таблицы необходимо задать ключевое поле – КодОценки (можно отказаться от создания ключевого поля)
Сохранить структуру таблицы с именем Успеваемость.
4. Установить связи между таблицами:
Выбрать команду Сервис — Схема данных или выбрать пиктограмму Схема данных на панели инструментов. Появится окно Схема данных, содержащее диалоговое окно Добавление таблицы, в котором отображается список таблиц. Выделить все таблицы: Группы студентов, Студенты, Дисциплины и Успеваемость и выполнить щелчок на кнопке Добавить. В окне Схема данных появятся таблицы, после этого необходимо закрыть окно Добавление таблицы.
Далее необходимо связать таблицы Группы студентов и Студенты, отбуксировав поле КодГруппы таблицы Группы студентов, на соответствующее поле таблицы Студенты. В появившемся диалогом окне Изменение связей необходимо активизировать флажки: Обеспечить целостность данных, каскадное обновление связанных полей и каскадное удаление связанных записей, убедится в том, что тип отношений один-ко-многим и нажать кнопку Создать. В окне Схема документа появится связь один-ко-многим между таблицами Группы студентов и Студенты. Аналогично связать таблицы Студенты и Успеваемость, отбуксировав поле КодСтудентов таблицы Студенты, на соответствующее поле таблицы Успеваемость и установив те же флажки. Кроме того, необходимо связать таблицы Дисциплины и Успеваемость, используя КодДисциплины.
Закрыть окно Связи. При запросе на сохранение выполнить щелчок на кнопке Да.
5. Заполнение таблиц
Для заполнения таблиц Группы студентов и Студенты данные выбираются самостоятельно, а для таблиц Дисциплины и Успеваемость данные представлены в таблицах 5 и 6.
Заполнение таблиц целесообразно начинать с таблицы Группы студентов, так как поле Код группы таблицы Студенты используется в качестве столбца подстановки для заполнения соответствующего поля таблицы Студенты.
В окне Базы данных выбрать нужную таблицу, затем выполнить щелчок по кнопке Открыть.
На экране появится структура таблицы БД в режиме таблицы. Заполнение производится по записям, т.е. вводится информация для всей строки целиком. При заполнении текущей строки появится новая пустая строка.
Переход к следующему полю осуществляется нажатием клавиши <Таb>.
Для заполнения поля MEMO в таблице Студенты нажать комбинацию клавиш <Shif+F2>, предварительно установив курсор в поле MEMO. Откроется текстовое окно «Область ввода». После ввода или редактирования данных в этом окне щелкнуть по кнопке ОК.
Для заполнения данными поля Код группы в таблице Студенты использовать список поля подстановки, раскрывая его щелчком мыши по кнопке раскрытия списка. Выбор названия группы производится щелчком мыши в соответствующей строке списка.

5.


Введение

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

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

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

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

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

По упрощенному определению, база данных - это набор данных, которые используются системой. Обычно под данными подразумевают значения, хранящиеся в базе данных. Но сегодня данные могут быть песней, картинкой или видеороликом. Система управления базой данных - это программы, которые помогают хранить, управлять и использовать наборы данных независимо от их формата. В более формальном определении система управления базой данных - это программное обеспечение, которое создает, поддерживает и использует базы данных. Примерами популярных крупных систем управления базами данных являются Oracle, Microsoft SQL Server и IBM DB2. Возможно, вы работали с небольшими системами управления базами данных, такими как Microsoft Access.

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

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

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

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

Существуют следующие типы моделей представления данных:

Иерархическая модель данных
Иерархическая база данных - первый предок всех баз данных. Ее название происходит от способа представления базы данных в виде древовидной иерархии, похожей на систему каталогов в компьютере. Самый известный подобного рода продукт под названием Information Management System (IMS, Информационная управляющая система) был разработан компанией IBM. IMS доминировал на рынке крупных баз данных с 1960-х до ранних 1990-х годов. Единственная проблема IMS заключалась в сложности ее использования. Для взаимодействия с базой данных требовался профессиональный программист. Несмотря на усилия IBM по сокращению сферы ее использования в пользу реляционных продуктов, IMS по-прежнему применяется в некоторых старых системах для управления большими базами данных, таких, например, которые используются в страховых компаниях. Компании по-прежнему используют IMS по четырем причинам. Во-первых, она дает возможность быстрого доступа к миллионам записей. Во-вторых, переход к реляционной системе может привести к временным перерывам в работе систем. В-третьих, такой переход потребует значительных финансовых затрат. В-четвертых, сложно проводить изменения в работе информационной системы в процессе ее работы.
2.2. Сетевая модель данных
Сетевая база данных, предназначенная для систем среднего размера, появилась, как способ улучшить иерархическую модель. Название происходит от представления базы данных в виде сети связанных таблиц. По сути, сетевая диаграмма выглядит очень похоже на ERD, которые мы используем в этой книге. Основное различие между сетевой и реляционной базой данных состоит в том, что в реляционной базе данных используются внешние ключи для создания связей между таблицами, тогда как сетевая база данных использует для связи таблиц физические указатели. Это кажущееся небольшим отличие приводит при внедрении баз к сильным различиям между ними. Самый известный сетевой продукт, названный IDMS (Integrated database management systems, интегрированная система управления базами данных) была разработана компанией Computer Associates. Как и IMS, IDMS сложна в использовании, и для взаимодействия с такой базой данных требуется профессиональный программист. Большинство предприятий используют иерархические и сетевые продукты, в основном, на старых системах. Новые разработки почти полностью ведутся на основе реляционных систем.
2.3. Реляционная модель данных
Реляционная система является самой простой для разработки и управления базой данных. Профессионалы могут работать более эффективно, используя реляционные системы, так как они позволяют существенно сэкономить время и силы: Более того, для использования этой системы от администратора требуется гораздо меньшая теоретическая подготовленность. Простота использования - одна из причин, почему реляционные системы появились на персональных компьютерах. Единственным недостатком, в котором обвиняли ранние реляционные продукты, была их низкая скорость работы. Однако три события, произошедшие за последние несколько лет, решили проблему скорости.

Существует большой выбор реляционных продуктов. Такие разработчики, как Oracle, IBM и Microsoft, создают конкурирующие реляционные продукты. Oracle и ЮМ конкурируют на профессиональном рынке для больших серверов, которые используются крупными компаниями, будь то строительная или Web-компания. Microsoft нацелена на небольшие и среднего размера системы. К счастью, все эти системы основаны на одной и той же реляционной модели и используют один язык структурированных запросов (SQL).

1.2.
СУБД
MS
Access

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

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

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

Так как Microsoft Access является современным приложением Windows, можно использовать в работе все возможности DDE (динамический обмен данными) и OLE (связь и внедрение объектов). DDE позволяет осуществлять обмен данными между Access и любым другим поддерживающим DDE приложением Windows. В Microsoft Access можно при помощи макросов или Access Basic осуществлять динамический обмен данными с другими приложениями.

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

В Microsoft Access для обработки данных базовых таблиц используется мощный язык SQL (структурированный язык запросов). Используя SQL можно выделить из одной или нескольких таблиц необходимую для решения конкретной задачи информацию. Access значительно упрощает задачу обработки данных. Совсем не обязательно знать язык SQL. При любой обработке данных из нескольких таблиц Access использует однажды заданные связи между таблицами.

В Microsoft Access имеется также простое и в то же время богатое возможностями средство графического задания запроса – так называемый «запрос по образцу» (query by example), которое используется для задания данных, необходимых для решения некоторой задачи. Используя для выделения и перемещения элементов на экране стандартные приемы работы с мышью в Windows и несколько клавиш на клавиатуре, можно буквально за секунды построить довольно сложный запрос.

Microsoft Access спроектирован таким образом, что он может быть использован как в качестве самостоятельной СУБД на отдельной рабочей станции, так и в сети – в режиме «клиент-сервер». Поскольку в Microsoft Access к данным могут иметь доступ одновременно несколько пользователей, в нем предусмотрены надежные средства защиты и обеспечения целостности данных. Можно заранее указать, какие пользователи или группы пользователей могут иметь доступ к объектам (таблицам, формам, запросам) базы данных. Microsoft Access автоматически обеспечивает защиту данных от одновременной их корректировки разными пользователями. Access также опознает и учитывает защитные средства других подсоединенных к базе данных структур (таких, как базы данных Paradox, dBASE и SQL).

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

Microsoft Access предоставляет дополнительные средства разработки приложений, которые могут работать не только с собственными форматами данных, но и с форматами других наиболее распространенных СУБД. Возможно, наиболее сильной стороной Access является его способность обрабатывать данные электронных таблиц, текстовых файлов, файлов dBASE, Paradox, Btrieve, FoxPro и любой другой базы данных SQL, поддерживающей стандарт ODBE. Это означает, что можно использовать Access для создания такого приложения Windows, которое может обрабатывать данные, поступающие с сетевого сервера SQL или базы данных SQL на главной ЭВМ.

Все выше сказанное позволило остановить выбор на СУБД Access для постановки и решения задачи автоматизации процесса ведения документации и отчетности в учебном заведении.
1.3.

Типы данных и объекты базы данных

Таблицы баз данных, как правило, допускают работу с гораздо большим количеством разных типов данных. Так, например, базы данных Microsoft Access работают со следующими типами данных.

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

Числовой – тип данных для хранения действительных чисел.

Поле Мемо – специальный тип данных для хранения больших объемов текста (до 65 535 символов). Физически текст не хранится в поле. Он храниться в другом месте базы данных, а в поле храниться указатель на него, но для пользователя такое разделение заметно не всегда.

Дата/время – тип данных для хранения календарных дат и текущего времени.

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

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

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

Гиперссылка – специальное поле для хранения адресов URL Web-объектов Интернета. При щелчке на ссылке автоматически происходит запуск броузера и воспроизведение объекта в его окне.

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

Объекты базы данных: