Информатика. Контрольная работа Acces. Лабораторная работа бд Фирма
Скачать 0.98 Mb.
|
Лабораторная работа БД «Фирма» Таблицы, схема данных Создадим базу данных «Фирма» в программе Microsoft Access 2010. Для этого зайдем в Microsoft Access 2010, в открывшемся окне программы в строке Имя файла введите название создаваемой базы данных: Фамилия студента Фирма Название группы, укажите путь до папки в которой будете сохранять базу данных и нажмите кнопку Создать. Сотрудники данной организации, т.е. Фирмы, работают с клиентами и выполняют их заказы. Если все сведения поместить в одной таблице, то она станет очень не- удобной для работы. В ней начнутся повторы данных. Всякий раз, когда со- трудник Иванов будет работать с какой-либо фирмой, придется прописывать данные о сотруднике и клиенте заново, в результате чего можно допустить множество ошибок. Чтобы уменьшить число ошибок, можно исходную таблицу разбить на несколько таблиц и установить связи между ними. Это будет более рационально, чем прежде. Необходимо создать 3 таблицы: Сотрудники, Клиенты и Заказы. Сотрудники Имя поля Тип данных Код сотрудника Счетчик Фамилия Текстовый Имя Текстовый Отчество Текстовый Должность Текстовый Телефон Текстовый Адрес Текстовый Дата рождения Дата/Время Заработная плата Денежный Фото Объект OLE Эл_почта Гиперссылка Клиенты Имя поля Тип данных Код клиента Счетчик Название компании Текстовый Адрес Текстовый Номер телефона Текстовый Факс Числовой Адрес электронной почты Гиперссылка Заметки Поле МЕМО Заказы Имя поля Тип данных Код заказа Счетчик Код клиента Числовой Код сотрудника Числовой Дата размещения Дата/Время Дата исполнения Дата/Время Сумма Денежный Отметка о выполнении Логический Отдельные таблицы, содержащие информацию по определенной теме, необходимо связать в единую структуру базы данных. Для связывания таблиц следует задать ключевые поля. Ключ состоит из одного или нескольких полей, значения которых однозначно определяют каждую запись в таблице. Наиболее подходящим в качестве ключевого поля является «Счетчик», так как значения в данном поле являются уникальными (т. е. исключают повторы). 1. Откройте таблицу Сотрудники в режиме Конструктора. 2. Нажмите правой кнопкой мыши на поле Код сотрудника и в появив- шемся контекстном меню выберите команду Ключевое поле. Если в таблице не- обходимо установить несколько ключевых полей, то выделить их можно, удер- живая клавишу Ctrl. 3. Для таблицы Клиенты установите ключевое поле Код клиента, а для таблицы Заказы - Код заказа. 4. В таблицу Сотрудники внесите данные о 6работниках. Для заполнения поля Фото нужны картинки (фотографии). Если их на компьютере нет, можно поступить следующим образом: Открыть чистый документ Word, на вкладке Вставка нажать кнопку Картинки; В строке Искать набрать, например, Лица людей, в строке Искать объекты – Все файлы мультимедиа, поставить флажок Включая содержимое… и нажать кнопку Начать. Появятся найденные картинки; Перетащить или сохранить выбранные картинки на лист Word; Выделить картинку правой клавишей мышки и выбрать пункт Сохранить как рисунок. Выбрать директорию, куда будет сохранен рисунок, задать название его, а в строке Тип файла обязательно выбрать формат Точечный рисунок Windows (BMP), т.е. расширение .bmp. Если есть готовые фотографии, то их пересох ранить в этом формате! Для вставки картинок (фотографий) в таблицу необходимо открыть таблицу Сотрудники. Поставить курсор в первое незаполненное (пустое) поле. Нажать правую клавишу мышки и нажать пункт Выбрать объект. Поставить переключатель Создать из файла, нажать кнопку Обзор и найти сохраненную картинку. Нажать ОК. Аналогично вставляются другие сохраненные картинки. 5. В таблицу Клиенты внесите данные о 7 предприятиях, с которыми работает данная фирма 6. Таблица Заказы содержит поля Код сотрудника и Код клиента. При их заполнении могут возникнуть некоторые трудности, так как не всегда удается запомнить все предприятия, с которыми работает фирма, и всех сотрудников с номером кода. Для удобства можно создать раскрывающиеся списки с помощью Мастера подстановок. 7. Откройте таблицу Заказы в режиме Конструктора. 8. Для поля Код сотрудника выберите тип данных Мастер подстановок. 9. В появившемся окне выберите команду «Объект «столбец подстановки» будет использовать значения из таблицы или запроса» и щелкните на кнопке Далее. 10. В списке таблиц выберите таблицу Сотрудники и щелкните на кнопке Далее. 11. В списке Доступные поля выберите поле Код сотрудника и щелкните на кнопке со стрелкой, чтобы ввести поле в список Выбранные поля. Таким же образом добавьте поля Фамилия и Имя и щелкните на кнопке Далее. 12. Выберите порядок сортировки списка по полю Фамилия. 13. В следующем диалоговом окне задайте необходимую ширину столбцов раскрывающегося списка. 14. Установите флажок Скрыть ключевой столбе» и нажмите кнопку Далее. 15. На последнем шаге Мастера подстановок замените при необходимости надпись для поля подстановок и щелкните на кнопке Готово. 16. Аналогичным образом создайте раскрывающийся список для поля Код клиента. 17. После создания ключевых полей можно приступить к созданию связей. Существует несколько типов отношений между таблицами: a) при отношении «один-к-одному» каждой записи ключевого поля в первой таблице соответствует только одна запись в связанном поле другой таблицы, и наоборот. Отношения такого типа используются не очень часто. Иногда их можно использовать для разделения таблиц, содержащих много полей, для отделения части таблицы по соображениям безопасности; b) при отношении «один-ко-многим» каждой записи в первой таблице соответствует несколько записей во второй, но запись во второй таблице не может иметь более одной связанной записи в первой таблице; c) при отношении «многие-ко-многим» одной записи в первой таблице могут соответствовать несколько записей во второй таблице, а одной записи во второй таблице могут соответствовать несколько записей в первой. 19. Закройте все открытые таблицы, так как создавать или изменять связи между открытыми таблицами нельзя. 20. Выполните команду: вкладка ленты Работа с базами данных Кнопка 21. Если ранее никаких связей между таблицами базы не было, то при открытии окна Схема данных одновременно открывается окно Добавление таблицы, в котором выберите таблицы Сотрудники, Клиенты и Заказы. 22. Если связи между таблицами уже были заданы, то для добавления в схему данных новой таблицы щелкните правой кнопкой мыши на схеме данных и в контекстном меню выберите пункт Добавить таблицу. 23. Установите связь между таблицами Сотрудники и Заказы, для этого выберите поле Код сотрудника в таблице Сотрудники и перенесите его на соответствующее поле в таблице Заказы. 24. После перетаскивания откроется диалоговое окно Изменение связей (рис. 1), в котором включите флажок Обеспечение условия целостности. Это позволит предотвратить случаи удаления записей из одной таблицы, при которых связанные с ними данные других таблиц останутся без связи. 25. Флажки Каскадное обновление связанных полей и Каскадное удаление связанных записей обеспечивают одновременное обновление или удаление данных во всех подчиненных таблицах при их изменении в главной таблице. Рис. 1. Создание связи между таблицами 25. Параметры связи можно изменить, нажав на кнопку Объединение. 26. После установления всех параметров нажмите кнопку ОК. 27. Связь между таблицами Клиенты и Заказы установите самостоятельно. 28. В результате должна получиться схема данных, представленная на рис. 2. Рис. 2. Схема данных В приведенном примере используются связи «один-ко-многим». На схеме данных они отображаются в виде соединительных линий со специальными значками около таблиц. Связь «один-ко-многим» помечается «1» вблизи главной таблицы (имеющей первичный ключ) и « » вблизи подчиненной таблицы (имеющей внешний ключ). Связь «один-к-одному» помечается двумя «1» (оба поля таблиц имеют первичные ключи). Неопределенная связь не имеет никаких знаков. Если установлено объединение, то его направление отмечается стрелкой на конце соединительной линии (ни одно из объединенных полей не является ключевым и не имеет уникального индекса). 30. В таблице Заказы оформите 4заявки, поступившие на фирму. Отбор данных с помощью запросов Запросы являются основным средством просмотра, отбора, изменения и анализа информации, которая содержится в одной или нескольких таблицах базы данных. Существуют различные виды запросов, но наиболее распространенными являются запросы на выборку, с них и начнем наше знакомство. 1. Выполните команду: вкладка ленты Создание/Мастер запросов /Простой запрос. 2. В появившемся диалоговом окне (рис. 3) укажите таблицу Сотрудники и выберите поля Фамилия, Имя, Телефон. Нажмите кнопку Далее. Рис. 3. Создание простого запроса 4. Введите имя запроса Телефоны и нажмите кнопку Готово. Перед вами появится запрос, в котором можно просмотреть телефоны сотрудников. 5. Следующий запрос попробуйте создать с помощью Конструктора, для этого выполните команду: вкладка ленты Создание / Конструктор запросов. 6. В диалоговом окне Добавление таблиц выберите таблицу Клиенты и щелкните на кнопке Добавить, а затем – на кнопке Закрыть. 7. Чтобы перенести нужные поля в бланк запроса, необходимо по ним дважды щелкнуть левой кнопкой мыши (рис. 4). Рис. 4. Создание запроса в режиме Конструктора 8. Чтобы отсортировать записи в поле Название компании в алфавитном порядке, необходимо в раскрывающемся списке строки Сортировка выбрать пункт по возрастанию. 9. Сохраните запрос с именем «Адреса клиентов». 10. Самостоятельно создайте запрос «Дни рождения», в котором можно будет просмотреть дни рождения сотрудников. 11. Допустим, мы хотим узнать, у кого из сотрудников день рождения в текущем месяце, например в апреле. Для этого откройте запрос в режиме Конструктора. 12. В строке Условие отбора для поля «Дата рождения» введите значение *. 04. *. В данной записи * означают, что дата и год рождения могут быть любыми, а месяц только 4-м (т.е. апрель). После этого окно запроса должно выглядеть так, как оно представлено на рис. 5. Рис. 5. Создание запроса 13. Закройте Конструктор и просмотрите полученный результат. Если в запросе Дни рождения нет ни одной записи, значит, в таблице Сотрудники нет ни одного человека, родившегося в апреле. Добавьте в таблицу Сотрудники несколько человек, родившихся в апреле, и посмотрите, как изменится запрос. Запросы автоматически обновляются при каждом открытии. 14. Если нам нужно узнать, кто из сотрудников родился в мае, то придется создать новый запрос или изменить условие в существующем запросе Дни рождения. Данная процедура является неудобной и занимает много времени. Если приходится часто выполнять запрос, но каждый раз с новыми значениями условий используют запрос с параметром. При запуске такого запроса на экран выводится диалоговое окно для ввода значения в качестве условия отбора. Чтобы создать запрос с параметром, пользователю необходимо ввести текст сообщения в строке Условие отбора бланка запроса (рис. 6). Рис. 6. Создание запроса с параметром 15. Запись Like [Введите дату] означает, что при открытии запроса поя- вится диалоговое окно (рис. 7) с текстом «Введите дату» и полем для ввода условия отбора. Если ввести условие *. 04. *, то в запросе появится список со- трудников, родившихся в апреле. Запустите запрос еще раз и введите значение *.05. *, посмотрите, как изменился запрос. 16. Измените ранее созданный запрос «Телефоны» так, чтобы при его запуске выводилось диалоговое окно с сообщением «Введите фамилию». Поскольку в запросе нужно вывести конкретную фамилию, в условии отбора слово Like писать не надо. 17. Измените запрос «Телефоны» так, чтобы при его запуске запрашивались не только фамилия, но и имя сотрудника. Рис. 7. Окно для ввода условия отбора 18. Самостоятельно создайте запрос «Выполненные заказы», содержащий следующие сведения: фамилия и имя сотрудника, название компании, с которой он работает, отметка о выполнении и сумма заказа. Данные запроса возьмите из нескольких таблиц. 19. В условии отбора для логического поля Отметка о выполнении введите Да, чтобы в запросе отображались только выполненные заказы. 20. Сделайте так, чтобы столбец Отметка о выполнении не выводился на экран. 21. Создайте запрос Сумма заказа, в котором будут отображаться заказы на сумму более 50 000 руб. 22. Измените запрос, чтобы сумма заказа была от 20 000 до 50 000 руб. Для данных запросов в условии отбора можно использовать операторы сравнения >, <, =, >=, <=, < > и логические операторы And, Or, Not и др. 23. Иногда в запросах требуется произвести некоторые вычисления, например, посчитать подоходный налог 13 % для каждой сделки. Для этого откройте запрос Сумма заказа в режиме Конструктора. 24. В пустом столбце бланка запроса щелкните правой кнопкой мыши на ячейке Поле и в появившемся контекстном меню выберите команду Построить. Перед вами появится окно Построитель выражений (рис. 8), который состоит из трех областей: поля выражения, кнопок операторов и элементов выражения. Сверху располагается поле выражения, в котором оно и создается. Вводимые в это поле элементы выбираются в двух других областях окна Построителя. 25. В левом списке откройте папку Запросы и выделите запрос Сумма заказа. В среднем списке выделите поле Сумма и нажмите кнопку Вставить. Идентификатор этого поля появится в поле выражения Построителя. 26. Щелкните на кнопке * и введите 0,13 (см. рис. 8). Таким образом, мы посчитаем подоходный налог 13 %. 27. Нажмите кнопку ОК, после чего в ячейке свойства Поле появится значение «Выражение1: [Сумма]*0,13». 28. Введите вместо слова Выражение1 название Налог и закройте Конструктор. 29. Откройте запрос и посмотрите, что у вас получилось. 30. Используя Построитель выражений, добавьте в запрос Сумма заказа поле Прибыль, в котором будет вычисляться доход от заказа (т. е. сумма минус налог). 31. Создайте запрос Менеджеры, с помощью которого в таблице Сотрудники найдите всех менеджеров фирмы. Использование форм в базе данных Формы – это объекты базы данных, предназначенные для просмотра данных из таблиц и запросов, для ввода данных в базу, корректирования существующих данных и выполнения заданных действий. Форма может содержать графики, рисунки и другие внедренные объекты. Можно вносить данные в таблицы и без помощи каких-либо форм. Но существует несколько причин, которые делают формы незаменимым средством ввода данных в базу: при работе с формами ограничен доступ к таблицам (самому ценному в базе данных); разные люди могут иметь разные права доступа к информации, хранящейся в базе. Для ввода данных им предоставляются разные формы, хотя данные из форм могут поступать в одну таблицу; вводить данные в форму легче, чем в таблицу, и удобнее, так как в окне формы отображается, как правило, одна запись таблицы; в большинстве случаев информация для баз данных берется из бумажных бланков (анкет, счетов, накладных, справок и т. д.). Экранные формы можно сделать точной копией бумажных бланков, благодаря этому уменьшается количество ошибок при вводе и снижается утомляемость персонала. Создавать формы можно на основе нескольких таблиц или запросов с помощью Мастера, используя средство Автоформы, «вручную» в режиме Конструктора, сохраняя таблицу или запрос как форму. Созданную любым способом форму можно затем изменять в режиме Конструктора. Рассмотрим некоторые из перечисленных способов. 1. Выполните команду: вкладка ленты Создание/Панель инструментов Формы /Другие формы /Мастер форм. 2. В диалоговом окне Создание форм выберите таблицы (запросы) и поля, которые будут помещены в форму. Щелкните по кнопке Далее. 3. В следующих диалоговых окнах мастера выберите внешний вид формы, стиль, задайте имя формы. Щелкните по кнопке Готово. 4. С помощью Мастера создайте формы Сотрудники, Клиенты, Заказы, Менеджеры. 5. В таблицу Сотрудники добавьте данные о двух работниках. 6. В таблицу Клиенты добавьте данные о двух предприятиях. 7. В таблицу Заказы добавьте две заявки, поступившие на фирму. 8. Откройте форму Сотрудники в режиме Конструктора. Этот режим предназначен для создания и редактирования форм. 9. Разместите элементы в удобном для вас порядке, измените размер и цвет текста. 10. В заголовок формы добавьте текст Сотрудники фирмы. 11. В примечание формы добавьте объект Кнопка (вкладка ленты Конструктор / панель инструментов Элементы управления). 12. После того как вы «нарисуете» кнопку указателем, на экране появится диалоговое окно Создание кнопок (рис. 9). Рис. 9. Создание кнопок на форме 10. В категории Работа с формой выберите действие Закрытие формы и нажмите кнопку Далее. 11. Выберите рисунок или текст, который будет размещаться на кнопке. 12. В последнем диалоговом окне Мастера кнопок задайте имя кнопки и нажмите Готово. 13. Мастер кнопок написал для данной кнопки процедуру на языке Microsoft Visual Basic. Просмотреть процедуру обработки события можно с помощью команды Обработка событий контекстного меню кнопки. 14. Самостоятельно создайте кнопки Выход из приложения, Поиск записи, Удаление записи. 15. Иногда на форме требуется разместить несколько страниц, содержащих данные из различных источников, справочную или вспомогательную информацию. Для этой цели можно использовать набор вкладок. 16. Создайте пустую форму. 17. Для добавления к форме набора вкладок щелкните по кнопке Вкладка на панели инструментов Элементы управления. Сначала добавятся только две вкладки с формальными именами Вкладка 1 и Вкладка 2. 18. Добавьте еще одну вкладку. 19. Переименуйте ярлычки вкладок так, чтобы на них отображались названия данных, которые будут в них располагаться: Сотрудники, Менеджеры, Помощь. 20. Перейдите на вкладку Сотрудники и перетащите на нее мышкой из базы данных форму Сотрудники. 21. Аналогичным образом поместите форму Менеджеры на вкладку Менеджеры. 22. На вкладку Помощь поместите некоторые советы по работе с базой данных. 23. Данную форму сохраните с именем Сотрудники фирмы. Создание отчетов Отчеты предназначены для вывода информации на печать. Часто данные в них располагаются в табличной форме. В отличие от распечаток таблиц или запросов отчет дает более широкие возможности сортировки и группировки данных, он предоставляет возможность добавлять итоговые значения, а также поясняющие надписи, колонтитулы, номера страниц, стили и различные графи- ческие элементы. Создавать отчеты в базе данных Access можно несколькими способами: с помощью Мастера отчетов; на основе таблиц или запросов; в режиме Конструктора. 1. В окне базы данных выполните команду: вкладка ленты Создание /панель инструментов Отчеты/Мастер отчетов. 2. Выберите из списка таблицу (или запрос), которая будет использована как источник данных, например, запрос Адреса клиентов. 3. В появившемся диалоговом окне Создание отчетов (рис. 15) переместите все доступные поля в область «выбранные поля». Нажмите кнопку Далее. Рис. 15. Мастер отчетов 4. На следующем шаге создания отчета можно Добавить уровни группировки по доступному полю, если есть в этом необходимость (можно и не добавлять). Кнопка Далее. 5. На следующем шаге можно задать требуемый порядок сортировки. Кнопка Далее. 6. На следующем шаге выбрать вид макета для отчета, а также ориентацию страницы для его размещения. 7. Назовите отчет Адреса клиентов. Нажмите кнопку Готово. 8. С помощью Мастера отчетов создайте отчет Дни рождения. В качестве источника данных используйте таблицу Сотрудники. 9. Если требуется напечатать почтовые наклейки, Access предоставляет такую возможность. Для этого выделите таблицу Клиенты и выполните команду: вкладка ленты Создание / панель инструментов Отчеты /Наклейки. 10. В появившемся диалоговом окне (рис. 16) укажите размер наклейки, систему единиц, тип наклейки и нажмите кнопку Далее. 11. На следующем шаге создания отчета установите шрифт, размер, цвет текста и начертание. Нажмите кнопку Далее. 12. Выберите поля, которые будут размещаться на наклейке. Например, Название компании, Адрес, Телефон и Факс. Если на каждой наклейке требуется вывести определенный текст, то введите его в прототип наклейки. Рис. 16. Диалоговое окно Создание наклеек 7. При необходимости измените название отчета с наклейками и нажмите кнопку Готово. 8. Иногда в отчетах требуется вычислять итоговые значения, среднее, минимальное или максимальное значения, а также проценты. Для этого запустите Мастер отчетов и в качестве источника данных укажите запрос Сумма заказа. 9. При создании отчета в окне Добавить уровни группировки необходимо выбрать уровень группировки, например, Код клиента. Тогда в следующем окне появится кнопка Итоги. Нажмите на нее. Рис. 17. Вычисление итоговых значений в отчетах 10. В диалоговом окне Итоги (рис. 18) для полей Сумма и Налог установите флажки в столбце sum, чтобы посчитать итоговую сумму. Рис. 18. Вычисление итоговых значений суммы 13. Далее выполните все шаги Мастера и нажмите кнопку Готово. 14. Аналогично, найдите Максимальную сумму для каждого клиента фирмы. Назовите отчет Максимальная сумма. 15. Все отчеты необходимо отформатировать. Для этого открыть отчет, щелкнуть по ярлыку с названием его правой кнопкой мыши, нажать Режим макета. Расширить поля надписей и данных, которые полностью не видно. Данные должны располагаться под соответствующими заголовками. Сдвинуть столбцы с названиями и данными к левому краю листа, так чтобы между столбцами было расстояние 1-2 см. (отсутствовали пустые места) и т.д.. |