Индексирование полей таблицы
Лабораторная работа № 1
ТЕМА: Создание таблиц базы данных.
Цель работы:Ознакомление с основными понятиями СУБД Access на примере учебной базы данных компании «Борей». Освоение технологии конструирования реляционных таблиц.
Требования к содержанию, оформлению и порядку выполнения
Перед выполнением лабораторной работы создайте папку «Ваша фамилия Lab 1» (например: «Ivanov Lab 1»). В эту папку в ходе выполнения работы необходимо сохранять требуемые материалы. Далее необходимо изучить теоретический материал и выполнить последовательно все предложенные задания. После выполнения лабораторной работы ответьте на контрольные вопросы.
Теоретическая часть
СУБД Access использует реляционнуюмодель базы данных, в которой данные представлены в виде взаимосвязанных таблиц (отношений по англ. - relations).
Важнейшим этапом проектирования базы данных является разработка информационно-логической модели предметной области, не ориентированной на СУБД, но отражающей предметную область в виде совокупности информационных объектов и их информационных связей.
СУБД Access позволяет работать с объектами базы данных, к которым относятся таблицы, запросы, формы, отчеты, страницы, макросы и модули
Таблицы служат для хранения данных в определенной структуре.
Запросы создаются для выборки данных из одной или нескольких связанных таблиц.
Формы предназначены для ввода, редактирования и просмотра табличных данных на экране в удобном виде.
Отчеты являются выходными документами, предназначенными для вывода на принтер.
Страницы доступа к данным - это WEB- страницы, обеспечивающие функциональность стандартных форм и отчетов Access: ввод, редактирование и представление данных. Страницы доступа к данным можно открывать в программах просмотра WEB-страниц (например, Internet Explorer) и использовать для ввода, просмотра и отбора информации в базе данных.
Макросы используются для автоматизации различных процедур обработки данных, являются программами, состоящими из макрокоманд высокого уровня. Макропрограммирование в Access не требует знания языка VisualBasic. Имеющийся в Access набор из около 60 макрокоманд обеспечивает практически любые действия, необходимые для решения задач.
Модули являются программами на языке, которые служат для реализации нестандартных процедур обработки данных.
Все данные БД Microsoft Access и средства их отображения хранятся в одном файле с расширением MDB.
Задание 1.
Ознакомиться с учебной базой данныхкомпании «Борей»
Технология выполнения:
1. Запустить приложение Microsoft Access 2010.
2. В диалоговом окне, которое появится в процессе загрузки в группе Создание базы данных выбрать вариант Образцы шаблонов.
3. В диалоговом окне Доступные шаблоны выберите пример базы данных компании Борей.
Рисунок 1.
4. Для того чтобы открыть БД «Борей», необходимо активировать ее двойным щелчком правой клавишей мыши.
5. В окне появится заставка учебной базы данных «Борей».
Рисунок 2.
6. Чтобы просмотреть БД, на панели сообщений выберите команду «Включить содержимое».
7. Появится окно входа, где необходимо из списка выбрать Ф.И. сотрудника компании и нажать на командную кнопку Вход.
8. Просмотреть данныекаждой таблицы,открыв их, перемещаясь по быстрым ссылкам.
9. Просмотреть структурукаждой таблицыв режиме конструктора: Главная =>Режим =>Конструктор.
Рисунок 3.
10. Открыть таблицу «Клиенты»ивыполнить следующие операции:
· определить количество записей в таблице;
· просмотреть 25-ую запись, введя ее номер в окно номеров записей;
· выполнить сортировку таблицы по должностям. Для этого необходимо установить указатель мыши на треугольник в заголовке столбца и щелкнуть правой кнопкой мыши. Появится контекстное меню, выберите пункт «Сортировка по возрастанию».
· скрыть столбец «Организация». Для этого необходимо выделить его и вызвать контекстное меню правой клавишей мыши выбрать вкладку Скрыть поля. Отмените скрытие и добавьте с помощью переключателей столбцы: факс, адрес, город, область, индекс.
· выделить первые два столбца и закрепитьих с помощью контекстного меню, выполнив командуЗакрепить поля.Прокрутить таблицу по горизонтали (убедиться, что столбцы не перемещаются). Отменить закрепление;
· применить фильтр для выделения строк с клиентами, у которых имя начинается на букву А. Для этого выделить любую строку в столбце с полем Имя и вызвать контекстное меню. Выполнить команду Текстовые фильтры => Начинается с => введите букву.
· Отменить фильтр, щелкнув в контекстном меню по пункту «Снять фильтр с Имя»
· изменить вид сетки таблицы, используя соответствующую кнопку инструментальной панели.
11. Просмотреть таблицу«Сотрудники» в режиме конструктора.
12. Просмотреть отчеты (для этого в области навигации щелкните по кнопке «Открыть/Закрыть границу области перехода»).
Рисунок 4.
Из появившегося списка найдите вкладку Отчеты и просмотрите некоторые из них, например:
· «Адресная книга клиентов»;
· «Годовой отчет о продажах»;
· «Счет»;
Таблицы
Таблицы составляют основу базы данных - именно в них хранятся все данные. Таблицы должны быть тщательно спланированы. Прежде всего, должна быть спланирована структура каждой таблицы. Структура таблиц определяется содержанием тех выходных форм и отчетов, которые должны быть, затем получены. При планировании таблиц необходимо избежать дублирования информации в разных таблицах.
Таблица - это объект БД, который хранит данные определенной структуры. Таблица состоит из записей (строк), каждая из которых описывает одну сущность. Каждый столбец таблицы - это поле. Столбец содержит однотипную информацию.
Длина имени таблицы - не более 64 символов.
Длина имени поля - не более 64 символов.
Количество полей в одной таблице - не более 255.
Количество записей - неограниченно.
Суммарный объем информации во всей БД - не более 1 гигабайта.
Для каждого поля необходимо указать тип данных. Тип данных определяет вид и диапазон допустимых значений, которые могут быть введены в поле, а также объем памяти, выделяющийся для этого поля.
Таблица может содержать следующие типы полей:
ТекстовыйКороткий текст. Текст и числа, например, имена и адреса, номера телефонов и почтовые индексы. Текстовое поле может содержать до 255 символов.
Поле МемоДлинный текст и числа, например, комментарии и пояснения. Меmо- поле может содержать до 65 535 символов.
ЧисловойОбщий тип для числовых данных, допускающих проведение математических расчетов, за исключением расчетов для денежных значений. Свойство Размер поля позволяет указать различные типы числовых данных. Длина - до 8 байт. Точность -до 15 знаков.
Дата/времяЗначения даты и времени. Пользователь имеет возможность выбрать один из многочисленных стандартных форматов или создать специальный формат. Длина - 8 байт.
ДенежныйДенежные значения. Числа представляются с двумя знаками после запятой. Не рекомендуется использовать для проведения денежных расчетов значения, принадлежащие к числовому типу данных, так как последние могут округляться при расчетах. Значения типа "Денежный" всегда выводятся с указанным числом десятичных знаков после запятой. Длина - 8 байт.
СчетчикАвтоматически вставляющиеся последовательные номера. Счетчик увеличивается на единицу для каждой следующей записи. Нумерация начинается с 1. Поле счетчика удобно для создания ключа. В таблице может быть только одно такое поле. Длина - 4 байта.
ЛогическийЗначения "Да"/"Нет", "Истина'/Ложь", "Вкл"/"Выкл", т.е. одно из двух возможных значений. Длина - 1 байт.
Поле объекта ОLЕОбъекты, созданные в других программах, поддерживающих протокол ОLЕ, например графики, рисунки и т.п. Объекты связываются или внедряются в базу данных Microsoft Access через элемент управления в форме или отчете.
Гиперссылка- позволяет вставлять в поле гиперссылку, с помощью которой можно ссылаться на произвольный фрагмент данных внутри поля или страницы на том же компьютере, в локальной сети или в Internet.
Индексирование полей таблицы.
Индексирование позволяет ускорить сортировку и поиск данных в таблице. Можно индексировать числовые, денежные, текстовые, логические поля, а также поля типа Счетчик и Дата. Не следует создавать слишком много индексов для одной таблицы, т.к. это замедлит ввод и редактирование ее данных.
Первичный ключ- это специальный тип индекса, который однозначно идентифицирует каждую запись. В первичный ключ могут входить несколько полей, но значение первичного ключа должно быть уникальным для каждой записи. Первичные ключи используются для установления связей между таблицами.
Связи между таблицами.
Таблицы могут быть связаны отношениями один – к -одному, один -к многим и многие – к - многим.Access позволяет использовать только отношения первых двух типов.
При установлении связей нужно определить какая таблица является главной, а какая - подчиненной.
Отношение один-к-одному означает, что одной записи подчиненной таблицы соответствует только одна запись в главной таблице. Такие отношения встречаются очень редко, т.к. требую неоправданно много места в БД. Вместо них можно просто добавить поля подчиненной таблицы к полям главной.
Наиболее часто используются отношения один-ко-многим. В этом случае одной записи в главной таблице соответствует несколько записей в подчиненной таблице.
Для создания отношений необходимо указать поля в двух таблицах, которые содержат одни и те же данные. Обычно такое поле в одной из таблиц (главной) является ключевым. Имена связывающих полей могут отличаться, но типы и свойства должны совпадать. Возможна связь между полем типа Счетчик и полем типа Число с форматом Длинное целое.
Рекомендации для ввода данных в таблицы Для ввода в поле текущей записи значения из того же поля предыдущей записи нажать клавиши <Ctrl> и <">.(Двойной апостроф на русском регистре - на клавише "2").
Задание 2.
Создать базу данных Университетна основе инфологической модели,приведенной на рисунке 5. База данных должна содержать 4 взаимосвязанных таблицы: Студент, Группа, Специальность и Факультет.
Таблица Студент:
· Номер зачетной книжки - ключевое поле числового типа, размер - длинное целое;
· Номер группы - числовое поле, размер - целое;
· Фамилия - текстовое поле длиной 15 символов;
· Дата рождения - поле типа «дата»;
· Коммерческий - логическое поле (да/нет).
Таблица Группа:
· Номер группы - ключевое поле числового типа, целое;
· Номер специальности - числовое поле, длинное целое;
· Номер факультета - числовое поле, байтовое;
· Номер курса - числовое поле, байтовое.
Таблица Факультет:
· Номер факультета - ключевое поле числового типа, байтовое;
· Наименование факультета - текстовое поле, 30 символов;
· Декан - тестовое поле, 15 символов.
Таблица Специальность:
· Номер специальности - ключевое поле числового типа, длинное целое;
· Наименование специальности - текстовое поле, 40 символов;
· Стоимость обучения - денежного типа.
Технология создания таблицы Студент
Таблицу можно создать несколькими способами: с помощью режима конструктор, с помощью режима таблицы и путем импорта данных. Рассмотрим создание таблицы с помощью режима таблицы.
1. Создатьновую базу данных: Файл => Создать => Новая база данных.
Рисунок 6.
2. На вкладке с правой стороны Новая база данных введите имя файла Университети нажмите кнопку Создать. По умолчанию в окне базы данных откроется режим таблицы. Если этого не произойдет, то выполните пункт № 3.
3. В основном меню приложения Созданиеперейдите в режим=> Таблица.
4.На 1-м шагеработы необходимо добавить поля в таблицу. Для этого в поле Щелкните для добавления вызовите правой клавишей мыши контекстное меню и выполните команду Текст, тем самым установив тип данных, появиться Поле 1. Переименуйте его на Фамилия, дважды щелкая по полю 1. Поле Код переименуйте на номер группы,выделив нужное поле и вызвав контекстного меню выполните команду Переименовать поле.Таким образом, включите в создаваемую таблицу все оставшиеся поля:
· номер группы (тип данных – число);
· фамилия (тип данных – текст);
· коммерческий (тип данных – логический);
· дата рождения (тип данных – дата и время);
· номер зачетной книжки (тип данных – число).
Рисунок 7.
5.На шаге2 в окне «Создание таблиц» дать имя таблице«Студент», предварительно нажав на пиктограмму сохранить. Microsoft Access автоматически определяет ключевое поле.
6.На шаге3 установить переключатель врежим конструкторГлавная => режимы => режим конструктораи провести корректировку типов данныхв соответствии с заданием.
Рисунок 8.
7.С помощью команды Главная => режимы => режим таблицы перейти в режим таблицыи приступить к вводу данных.
8. Ввести данные для 3-х групп по 10 студентов в каждой с различным набором признаков.
9. После ввода данных сохранить базу данных.
Задание 3.
Освоение приемов работы с фильтрами в таблицах
Найти студентов, фамилия которых начинается на заданную букву, например на букву «В». Список найденных студентов должен быть упорядочен по алфавиту. Для поиска использовать расширенный фильтр.
Технология выполнения:
1. Для установки расширенного фильтра необходимо на инструментальной панели выбрать команду Параметры расширенного фильтра,далее из перечня команд выбратьрасширенный фильтр.Появится окно с бланком фильтра.
Рисуно 9.
2.Указать поле,по которому должна происходить фильтрация. В окне бланка дважды щелкнуть по полю «Фамилия», расположенном в таблице «Студент». Поле «Фамилия» появится в 1-ой строке «Поле» нижней половины бланка (столбец 1).
3.Указатьв строке бланка «Сортировка» порядок сортировки.Для этого щелкнуть левой клавишей по этой строке в 1-м столбце. Появится список вариантов сортировки. Выбрать «по возрастанию».
4.Ввести условиеотбора. Для этого ввести в 3-ю строку 2 символа: В*
5.Применить фильтр.Для этого можно воспользоваться 3 способами:
· выполнить команду Параметры расширенного фильтра/Применить фильтр.
· щелкнуть по кнопке инструментальной панели «Применение фильтра»
· щелкнуть правой клавишей по свободной зоне бланка и в контекстном меню выбрать пункт «Применить фильтр».
Рисунок 10.
6.Отмена фильтра.Для просмотра таблицы в полном виде нужно выполнить команду Параметры расширенного фильтра/Очистить все фильтры.
Задание 4.
Найти студентов, родившихся в заданном году с помощью расширенного фильтра.
1. Вызвав контекстное меню, очистить бланк фильтра.
2. Ввести в 1-ый столбец бланка условие для поля дата рождения >= заданная дата, а во 2-ой столбец для того же поля условие <= заданная дата,
Задание 5.
Найти студентов, родившихся в заданном году и обучающихся на коммерческой основе в заданной группе.
Для решения задачи использовать 4 столбца бланка с названиями полей: дата рождения, дата рождения, номер группы, коммерческий.
Задание 6.
Предварительно создав в режиме конструктора,ввести данные в таблицы: Группа, Факультет, Специальность.
В таблице Группа поле «Номер группы» должно быть того же типа и того же размера, что и в таблице Студент. В эту таблицу следует ввести 5-6 строк, в том числе 3 строки с теми же номерами групп, что и в таблице Студент.
Аналогично, в таблице Факультет поле «Номер факультета» должно быть того же типа и того же размера, что и в таблице Группа. В таблице должно быть 3-5 строк, в том числе строки с такими же номерами факультетов, что и в таблице Группа.
В таблице Специальность поле «Номер специальности» должно быть того же типа и того же размера, что и в таблице Группа. В таблице должно быть 3-5 строк, в том числе строки с такими же номерами специальностей, что и в таблице Группа.
Задание 7.
Защита базы данных
Microsoft Access обеспечивает два традиционных способа защиты базы данных: установка пароля, требуемого при открытии базы данных, и защита на уровне пользователей, которая позволяет ограничить, к какой части базы данных пользователь будет иметь доступ или какую ее часть он сможет изменять. Кроме того, можно удалить изменяемую программу Visual Basic из базы данных, чтобы предотвратить изменения структуры форм, отчетов и модулей, сохранив базу данных как файл MDE.
Установка пароля
Простейшим способом защиты является установка пароля для открытия базы данных. После того как пароль установлен, при каждом открытии базы данных будет появляться диалоговое окно, в которое требуется ввести пароль.
Для установки пароля следует открыть базу данных в монопольном режиме (команда Файл/Открыть,в списке кнопки Открыть выбрать режим Монопольно) и выполнить команду Файл/Сведения/Зашифровать паролем.Появится диалоговое окно, где следует ввести пароль и его подтверждение.
Контрольные вопросы:
1. Сколько баз данных может быть открыто одновременно?
2. Опишите структуру рабочей среды СУБД Microsoft Access.
3. Какие типы объектов используются в БД Access? Для чего предназначены эти объекты?
4. В каком режиме можно изменять таблицы, запросы и формы?
5. Как работают операторы сравнения IN, BETWEEN, LIKE свойства Условие на значение?
6. Какие значения может принимать поле с числовым типом данных, размер которого Целое?
7. Какое поле называется ключевым?
8. Охарактеризуйте связи между таблицами.
9. Какие типы полей используются в таблицах?
10. Перечислите способы создания таблиц в БД Access.