Скачиваний:
57
Добавлен:
17.02.2014
Размер:
821.76 Кб
Скачать

РЕЛЯЦИОННАЯ БАЗА ДАННЫХ

Определения и понятия

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

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

В СУБД поддерживаются различные модели данных.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Уникальный ключ

Главная таблица

Подчиненная таблица

поле

Связь 1:М по одинаковому полю

запись

ОБЪЕКТЫ ACCESS

База данных Access включает следующие сохраняемые в одном MDB-файле объекты:

  • Таблицы, запросы, схемы данных, имеющие непосредственное отношение к базе данных;

  • Формы, отчеты, станицы доступа к данным, макросы и модули, называемые объектами приложения.

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

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

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

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

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

Таблицы (Tables) создаются пользователем для хранения данных об одной сущности – одном информационном объекте модели данных предметной области. Таблица состоим из полей (столбцов) и записей (строк). Каждое поле содержит одну характеристику информационного объекта предметной области. В записи собраны сведения об одном экземпляре информационного объекта.

База данных Ассеss может включать до 32768 объектов (включая формы, отчеты и т.д.). Одновременно может открываться до 2048 таблиц. Таблицы можно импортировать из баз данных dBase, FoxPro, Paradox и других приложений, из баз данных архитектуры клиент-сервер, таких как Microsoft SQL Server, или из электронных таблиц, таких как Excel и Lotus 1-2-3. База данных Ассеss позволяет работать с таблицами перечисленных источников путем организации связи с ними.

Запросы (Queries). Запросы на выборку служат для выборки нужных данных из одной или нескольких связанных таблиц. Результатом выполнения запроса является таблица, которая может быть использована наряду с другими таблицами базы данных при обработке данных. В запросе можно указать, какие поля выбранных таблиц нужно выбрать, как на их основе сформировать записи и выбрать нужные. Запрос может формироваться с помощью QBE-запросов (Query By Example, Запрос по образцу) или непосредственно инструкции SQL. Запросы действия позволяют обновлять, удалять или добавлять данные в таблицы, а также создавать новые таблицы на основе уже существующих.

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

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

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

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

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

Модули (Modules) содержат процедуры на языке Visual Basic for Applications. Могут создаваться процедуры-подпрограммы, процедуры-функции, которые разрабатываются пользователем для реализации нестандартных функций в приложении пользователя, и процедуры для обработки событий. Использование процедур позволяет создавать законченное приложение, которое имеет собственный графический интерфейс пользователя, позволяющий запросить выполнение всех функций приложения.

Лабораторная работа №1.

Тема: СОЗДАНИЕ БАЗЫ ДАННЫХ, СОСТОЯЩЕЙ ИЗ ОДНОЙ ТАБЛИЦЫ.

Цели работы:

  • Познакомиться с основными понятиями базы данных;

  • Научиться создавать таблицу базы данных в режиме Конструктор;

  • Освоить переход из режима Конструктор в режим Таблица;

  • Освоить основные приемы заполнения и редактирования таблицы базы данных;

  • Познакомиться с простой сортировкой значений таблицы;

  • Познакомиться с поиском записей по образцу;

  • Научиться сохранять загружать базу данных.

ЭТАПЫ РАБОТЫ

  1. Проектирование структуры базы данных.

  2. Конструирование будущих таблиц базы данных.

  3. Создание схемы базы данных.

  4. Ввод данных в таблицы.

ХОД РАБОТЫ.

Задание №1. Создайте новую базу данных и изготовьте структуру таблицы с информацией о студентах вашей группы.

Последовательность выполнения работы.

  • Вызовите программу Access

  • Включите мышкой переключатель Новая база данных и щелкните по кнопке ОК. Появится диалоговое окно. В поле Имя файла в качестве имени введите свою фамилию. И сохраните в папке УИТ – 41, предварительно создав ее.

  • Щелкните по кнопке Создать.

  • В следующем окне выберите тип создаваемого документа, в нашем случае, это Таблица. Щелкните по кнопке Создать.

  • В следующем диалоговом окне: Новая таблица имеется несколько вариантов. Выберите Конструктор и щелкните по кнопке ОК. Появится окно Конструктора.

  • В верхней левой клетке введите имя поля (слово Фамилия) и нажмите кнопку Enter. В соседней клетке появится тип данных, по умолчанию появится Текстовый. Любой другой выбирается с помощью ниспадающего меню.

  • Заполните поля в Конструкторе данными из таблицы 1.Общие свойства поля оставляем по умолчанию.

Таблица 1

Имя поля

Тип данных

Фамилия

Текстовый

Имя

Текстовый

Отчество

Текстовый

Год рождения

Числовой

Факультет

Текстовый

Курс

Числовой

Группа

Числовой

Подгруппа

Числовой

  • Сохраните таблицу.

  • В появившемся окне наберите имя таблицы Список и щелкните по кнопке ОК. появится запрос на создание ключевого поля – уникального поля записи, по которому удобно связывать таблицы. В нашем случае будут самостоятельно появляться числа – номера записей.

  • Ответьте Да.

  • Перейдите в режим работы Таблица, щелкнув по кнопке Вид.

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

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

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

Задание №2. Выполните редактирование ячеек.

  • Внимательно просмотрите таблицу и исправьте свои ошибки.

Задание №3. Отсортируйте значения таблицы.

  • Отсортируйте:

  1. фамилии - по алфавиту;

  2. имя - по алфавиту;

  3. год рождения – по убыванию.

Задание №4 . Выполните функции сохранить, закрыть, открыть.

Последовательность выполнения работы.

  • Сохраните текущую таблицу.

  • Закройте текущую таблицу.

  • Откройте снова свою базу данных с помощью команд Файл- Открыть - Имя своей базы данных – Открыть.

  • Откройте таблицу Список.

Задание №5. Выполните поиск записей по образцу.

Последовательность выполнения работы.

  • Установите текстовый курсор в поле Фамилия;

  • Щелкните по кнопке Найти, которая позволит найти запись по введенному значению.

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

Задание №6. Распечатайте таблицу Список.

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

Ход работы аналогичен вышеизложенному.

Варианты заданий.

  1. Таблица Видеокассеты содержит 6 полей (название фильма, жанр, исполнитель главной роли, страна, язык, длительность).

  2. Таблица Аудиокассеты содержит 5 полей (название альбома, исполнитель, стиль, автор музыки, длительность).

  3. Таблица Фонотека содержит 6 полей (название альбома, исполнитель, стиль, автор музыки, длительность, носитель).

  4. Таблица Косметика содержит 5 полей (название товара, фирма производитель, цвет, дата изготовления, стоимость).

  5. Таблица Моюшие средства содержит 5 полей (название товара, фирма производитель, назначение, дата изготовления, стоимость).

  6. Таблица Посуда содержит 6 полей (наименование, фирма производитель, материал, назначение, поставщик, цена).

  7. Таблица Одежда содержит 6 полей (наименование, фирма производитель, материал, назначение, поставщик, цена).

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

  9. Таблица Кондитерские изделия содержит 6 полей (наименование, фабрика-изготовитель, сорт, поставщик, цена).

  10. Таблица Библиотека содержит 6 полей (автор, наименование, жанр, издательство, год издания, объем).

  11. Таблица Автомобили содержит 5 полей (наименование, фирма изготовитель, страна, тип автомобиля, поставщик).

  12. Таблица Канцелярские товары содержит 6 полей (наименование, фирма изготовитель, страна, оформление, цвет, поставщик).

  13. Таблица Фототовары содержит 5 полей (наименование, фирма изготовитель, назначение, страна, тип, поставщик).

  14. Таблица Аптека содержит 5 полей (наименование, фирма изготовитель, страна, форма, цена).

  15. Таблица Мебель содержит 5 полей (наименование, фирма изготовитель, страна, материал, комплектация).

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

Ход работы аналогичен вышеизложенному.

Варианты заданий.

  1. Таблица Континенты.

  2. Таблица Страны Азии.

  3. Таблица Страны Европы.

  4. Таблица Видеокамеры.

  5. Таблица Фотоаппараты.

  6. Таблица Ваши преподаватели.

  7. Таблица Вузы Балакова.

  8. Таблица Страны Африки.

  9. Таблица Видеоигры.

  10. Таблица Цветы.

  11. Таблица Художники Балакова.

  12. Таблица Предприятия Балакова.

  13. Таблица Танцевальные коллективы Балакова.

  14. Таблица Питание.

  15. Таблица Знаменитые люди Балакова.

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

Задание №9. Завершите работу с Access.

Последовательность выполнения работы.

  • Выберите пункт меню Файл-Выход.

  • Если вы производили какие-либо действия в базе данных, не забудьте сохранить изменения.