Практикум. Лабораторный практикум БД. Задача проектирования базы данных проходит четыре основных этапа
Скачать 1.05 Mb.
|
Методические указания по выполнению заданияОткройте базу данных «Успеваемость» Перенесите данные таблицы «Сессия» в MSExcel. Для этого: выделите все записи с помощью команд Правка\Выделить все записи; выберите команды Внешние данные\Экспорт в MSExcel. В результате вы получите файл Сессия в MSExcel. Перейдите в MSExcel . Откройте файл Сессия. Постройте диаграммы по имеющимся данным, используя Мастер диаграмм. Сделайте копию таблицы на следующем листе книги. Отсортируйте ее по столбцу оценка. Подсчитав Промежуточные итоги, определите сколько было получено «отлично», «хорошо» и т.д.. Постройте гистограмму, сравнивающую эти величины. Постройте диаграмму, отражающую средний балл успеваемости каждого студента. Постройте диаграмму, отражающую успеваемость студентов по каждой дисциплине. Определите процент студентов, получивших «неудовлетворительную» оценку. Экспортируйте структуру таблиц базы данных «Успеваемость» в Word, выполнив команды Работа с базами данных – Средство документирования базы данных-Выделить все. Архивариус отформатирует и выведет на экран страницы со структурой базы данных, которые с помощью команд Внешние данные\Экспорт в MSWord поместите в MSWord. Перенесите исходную таблицу Сессия с данными из МSAccess в MSWord. Для этого: -выделите все записи и выберите команды Внешние данные\Экспорт в MSWord; -задайте нужный формат текста. В результате вы получите файл Сессия. Doc. Перенесите в MSWord диаграммы из MSExcel. Сохраните изменения в файле Сессия.doc. Дополните текстом с комментариями. Оформите полученный документ, используя возможности MSWORD. 5.6Лабораторная работа6 Цель работы: Создание экранных форм и отчетов средствами СУБД MicrosoftAccess. Содержание работы: По описанию логической модели базы данных создать основные объекты базы данных средствами MicrosoftAccess. При разработке запросов к базе данных использовать встроенные функции. При разработке форм, отчетов воспользоваться автоматизированными средствами, предоставляемыми Мастером форм и Мастером Отчетов. Требуется создать базу данных КАДРЫ, хранящую данные по учету личного состава. Рассмотрим упрощенный вариант, включающий только часть сведений о сотрудниках. Пусть это будут таблица 8 «Общие сведения», таблицу 9 «Назначения и перемещения», таблица 10 «Справочник должностей», таблица 11 «Стаж». Таблица 8 -Общие сведения -«Служащие»
Таблицу 9- Назначения и перемещения- «Приказ»
Таблица 10. Справочник должностей- «Должность»
Таблица 11 «Стаж»
Таблица 12 - Отношение информационных объектов
Создайте базу данных с именем «Кадры». Создайте таблицы базы данных Таблицы- Создать-Конструктор. В окне Конструктора введите имена полей, из раскрывающегося списка для каждого поля выберите тип поля, определите характеристики в нижней части окна Свойства полей. Некоторые из свойств уже заданы по умолчанию. Если ключевое поле является состоящим из нескольких полей, то прежде необходимо эти поля выделить с помощью Shift (смежные поля) или Ctrl (несмежные), а затем определять их как ключевые. Создайте Схему данных, используя таблицу 12. Внесите информацию из таблиц 13,15,16. Для заполнения таблицы «Приказ» создайте экранную форму, поля Табельный номер и Код должности преобразуйте в поля со списком, в качестве Источника укажите соответствующие таблицы «Служащие», «Должность». Таблица 13 -Общие сведения «Служащие»
Таблицу 14- Назначения и перемещения «Приказ»
Таблица 15. Справочник должностей «Должность»
Таблица 16 – «Стаж»
Постройте запрос, формирующий списки служащих по подразделениям. Подсчитайте количество сотрудников в каждом подразделении. Выведите фамилию сотрудника, который дольше других работает в организации. Внесите изменения в таблицу «Приказ»
Сформируйте список служащих, которые числятся в 501 подразделении. Сохраните запрос с именем 501. Поля запроса:
Для создания запроса воспользуйтесь Мастером запросов. Поля, включаемые в результирующую таблицу, выбирайте из соответствующих таблиц «Приказ», «Служащий», «Должность». Доработайте запрос в режиме Конструктор, добавив условие отбора для поля Подразделение. Продумайте, какую Групповую операцию следует использовать. Постройте запрос, определяющий стаж работы каждого служащего в организации. Требуется посчитать сколько полных лет, месяцев и дней отработал каждый из них. Создайте ведомость расчета надбавки к окладу, которая равна 10% от оклада, если общий стаж более 15 лет, и 0,5% за каждый год работы в данной организации, начиная с третьего. Замечание. Для каждого из запросов провести проверку полученных результатов с расчетами, выполненными вручную. Лабораторная работа7 Цель работы: Получение навыков работы по созданию кнопочных форм. Содержание работы: Создание кнопочной формы с помощью диспетчера кнопочных форм. Создание новой кнопочной формы, которая открывается из стартовой кнопочной формы. Изменение существующей кнопочной формы. Выбор кнопочной формы, автоматически открываемой при открытии БД. Удаление кнопочной формы Создать кнопочную форму для работы с созданными объектами(таблицы, формы, отчеты) базы данных «Кадры». Предусмотреть выход из БД. Выбрать в меню Работа с базами данных команду Диспетчер кнопочных форм. Если выводится приглашение подтвердить создание кнопочной формы, выполнить щелчок по кнопке (Рисунок 4).
В диалоговом окнеДиспетчер кнопочных формвыполнить щелчок по кнопке (Рисунок 5).
В диалоговом окнеСоздание(Рисунок 6) в полеИмя страницы кнопочной формыввести имя кнопочной формы для ввода информации (например, Ввод и редактирование). Выполнить щелчок по кнопке .
Аналогично создать кнопочные формы для просмотра документов и кнопку для выхода из БД. Выбрать строкуВвод и редактированиевыполнить щелчок по кнопке . В диалоговом окнеИзменение страницы кнопочной формы(Рисунок 7) выполнить щелчок по кнопке .
В диалоговом окнеИзменение элемента кнопочной формы(Рисунок 8) ввести текст подписи для первой кнопки (Ввод информации) выбрать команду в поле со спискомКоманда. (Открытие формы в режиме добавления.) Если выбрана одна из команд работы с формами, то в поле со спискомФормаследует выбрать имя открываемой формы (Ввод информации). Выполнить щелчок по кнопке .
Закончив создание кнопочной формы, выполнить щелчок по кнопке 5.8Лабораторная работа 8 Цельработы: Осваивать язык SQL. Создать базу данных с помощью СУБДMySQL. Задание: Создать таблицы базы данных “forum”, ввести данные. Провести редактирование по добавлению, изменению и удалениюданных с использованием SQL-запросов. 1.Запустить сервер MySQL. ВсистемномменюПуск - Программы - MySQL - MySQL Server 5.5 - MySQL Command Line Client. Откроется окно для ввода пароля. НажатьEnter на клавиатуре, если не требуется указывать пароль при настройке сервера или указать пароль, если его задавали. Ждать приглашения mysql>. Надо создать базу данных, которую назоватьforum. Для этого в SQL существует оператор create database. Создание базы данных имеет следующий синтаксис: Create databaseимя_базы_данных; Максимальная длина имени БД составляет 64 знака и может включать буквы, цифры, символ "_" и символ "$". Имя может начинаться с цифры, но не должно полностью состоять из цифр. Любой запрос к БД заканчивается точкой с запятой (этот символ называется разделителем - delimiter). Получив запрос, сервер выполняет его и в случае успеха выдает сообщение "Query OK ..." Итак, создать БД forum: НажатьEnter, ответ "Query OK ..." означает, что БД была создана: В этой базе данных надо создать 3 таблицы: Темы, Пользователи и Сообщения. Но перед тем, как это делать, надо указать серверу в какую именно БД создать таблицы, то есть надо выбрать БД для работы. Для этого используется оператор use. Синтаксис выбора БД для работы следующий: useимя_базы_данных; Итак, выбрать для работы БД forum: НажатьEnter, ответ "Databasechanged" означает, что база данных выбрана. Выбирать БД необходимо в каждом сеансе работы с MySQL. Для создания таблиц в SQL существует оператор createtable. Создание таблицы базы данных имеет следующий синтаксис: createtableимя_таблицы (имя_первого_столбца тип, имя_второго_столбца тип, ..., имя_последнего_столбца тип ); Требования к именам таблиц и столбцов такие же, как и для имен БД. К каждому столбцу привязан определенный тип данных, который ограничивает характер информации, которую можно хранить в столбце (например, предотвращает ввод букв в числовое поле). MySQL поддерживает несколько типов данных: числовые, строковые, календарные и специальный тип NULL, обозначающий отсутствие информации. В таблицах Темы, Пользователи и Сообщения всего два типа данных - целочисленные значения (int) и строки (text). Создать первую таблицу – Темы(topics) с тремя столбцами: id_topicint - id темы (целочисленное значение), topic_nametext - имя темы (строка), id_authorint - id автора (целочисленное значение). Нажимаем Enter - таблица создана. Аналогичным образом создать оставшиеся две таблицы - users (пользователи) и posts (сообщения): Необходимо иметь возможность посмотреть какие БД существуют, какие таблицы в них присутствуют, и какие столбцы эти таблицы содержат. Для этого в SQL существует несколько операторов: showdatabases - показать все имеющиеся БД, showtables - показать список таблиц текущей БД (предварительно ее надо выбрать с помощью оператора use), describeимя_таблицы - показать описание столбцов указанной таблицы. Чтобы посмотреть список таблиц БД forum (для этого ее предварительно надо выбрать), не забывать после каждого запроса, нажимать Enter: Посмотреть описание столбцов, например, таблицы topics: Оператор - drop позволяет удалять таблицы и БД. Удалить таблицу topics, воспользовавшись оператором, droptableимя_таблицы; Удалить саму БД forumможно с помощью следующего оператора dropdatabaseимя_базы данных; Для ввода данных в таблицы используется оператор INSERT. Синтаксис можно использовать двух видов. Первый вариант используется для внесения данных во все поля таблицы: INSERT INTO имя_таблицы VALUES ('значение_первого_столбца','значение_второго_столбца', ..., 'значение_последнего_столбца'); Внести в таблицу users следующие значения: INSERT INTO users VALUES ('1','sergey', 'sergey@mail.ru', '1111'); Второй вариант используется для внесения данных в некоторые поля таблицы: INSERT INTO имя_таблицы ('имя_столбца', 'имя_столбца') VALUES ('значение_первого_столбца','значение_второго_столбца'); В таблице users все поля обязательны для заполнения, но первое поле имеет ключевое слово - AUTO_INCREMENT (т.е. оно заполняется автоматически), поэтому можно пропустить этот столбец: INSERT INTO users (name, email, password) VALUES ('valera', 'valera@mail.ru', '2222'); Поля с типом NULL, т.е. необязательные для заполнения, тоже можно проигнорировать. А вот если попытаться оставить пустым поле со значением NOT NULL, то сервер выдаст сообщение об ошибке и не выполнит запрос. Кроме того, при внесении данных сервер проверяет связи между таблицами. Поэтому не удастся внести в поле, являющееся внешним ключом, значение, отсутствующее в связанной таблице. В этом убедитесь, внося данные в оставшиеся две таблицы. При внесении данных во вторую таблицу - topics (темы) надо помнить, что значения в поле id_author должны присутствовать в таблице users (пользователи). Теперь попробуйте внести еще одну тему, но с id_author, которого в таблице users нет (т.к. внесено в таблицу users только 5 пользователей, то id=6 не существует). Сервер выдает ошибку и говорит, что не может внести такую строку, т.к. в поле, являющемся внешним ключом, стоит значение, отсутствующее в связанной таблице users. Теперь внесите несколько строк в таблицу posts (сообщения), помня, что в ней 2 внешних ключа, т.е. id_author и id_topic, которые будете вносить, должны присутствовать в связанных с ними таблицах. Чтобы посмотреть, какие данные в таблицах содержатся,используем оператор SELECT. Синтаксис его использования следующий: SELECT что_выбратьFROMоткуда_выбрать; Вместо "что_выбрать" нужно указать либо имя столбца, значения которого нужно увидеть, либо имена нескольких столбцов через запятую, либо символ звездочки (*), означающий выбор всех столбцов таблицы. Вместо "откуда_выбрать" следует указать имя таблицы. Посмотрить все столбцы из таблицы users: SELECT * FROM users; В SQL существует ключевое слово ORDER BY после которого указывается имя столбца, по которому будет происходить сортировка. Синтаксис следующий: SELECT имя_столбца FROM имя_таблицы ORDER BY имя_столбца_сортировки; По умолчанию сортировка идет по возрастанию, но это можно изменить, добавив ключевое слово DESC. Сортировку можно производить сразу по нескольким столбцам. Для задания условия отбора в SQL есть ключевое слово WHERE, синтаксис у такого запроса следующий: SELECT имя_столбца FROM имя_таблицы WHERE условие; Корректный синтаксис объединения с условием выглядит так: SELECT имя_таблицы_1.имя_столбца1_таблицы_1, имя_таблицы_1.имя_столбца2_таблицы_1, имя_таблицы_2.имя_столбца1_таблицы_2, имя_таблицы_2.имя_столбца2_таблицы_2 FROM имя_таблицы_1, имя_таблицы_2 WHERE имя_таблицы_1.имя_столбца_по_которому_объединяем = имя_таблицы_2.имя_столбца_по_которому_объединяем; Для добавления столбцов в таблицу используется оператор ALTER TABLE - ADD COLUMN. Его синтаксис следующий: ALTER TABLE имя_таблицы ADD COLUMN имя_столбца тип; 6Варианты заданий для проектирования баз данныхИспользуя заданное краткое описание предметной области, необходимо спроектировать базу данных. К предложенному описанию можно добавить свои дополнения или внести изменения. Создать БД с перечнем видов спорта, присваиваемых разрядов и званий по каждому из них. БД содержит сведения о спортсменах, включающих условный номер вида спорта, которому отдает предпочтение каждый спортсмен. Спортсмен может заниматься несколькими видами спорта. Создать БД для учета движения товара на оптовом складе. Описать поставщиков товара. Реализация товара может происходить как на самом складе, так и через сеть магазинов. У вас есть коллекция картин, содержащая сведения о названии картины, ее авторе, дате создания, местонахождении. Если это музей, то указана страна, город, почтовый адрес, адрес электронной почты, факс, телефон. Если картина храниться в частной коллекции, то указаны адрес, телефон, фамилия владельца. Вы хотите построить базу данных, которая позволит находить сведения о картине, а также определять ее местонахождение и владельца. Спроектируйте базу данных поставщиков, деталей и проектов. Если известно, что определенный поставщик поставляет определенную деталь для определенного проекта в определенном количестве. Поставщики определяются статусом и городом, в котором они находятся. Детали классифицируются по весу, цвету. Проекты выполняются в различных городах. Спроектируйте базу данных винный погреб, для выполнения следующих операций в этой базе: а) выберите номер отсека, наименование вина и количество бутылок для всех вин GeyserPeak; б) выберите номер отсека для всех красных вин; в) выберите номер отсека, наименование вина для всех вин, запас которых составляет более пяти бутылок; г) добавьте данные нового поступления (12 бутылок) GaryFarrellMerlot: отсек номер 55, год 91, готово в 96. Учебная база данных включает информацию о системе процесса обучения внутри компании. Для каждого курса обучения база данных содержит подробности обо всех необходимых условиях и предложениях такого курса; а для каждого предложения она содержит подробности обо всех преподавателях и студентах, зарегистрированных для такого предложения. База данных также содержит информацию о сотрудниках. У вас есть коллекция классической музыки, содержащаяся на компакт-дисках, пластинках и аудиокассетах, вы хотите построить базу данных, которая позволит находить записи определенного композитора, дирижера, солиста, произведения, оркестра, вида произведения или камерной группы. Разработайте схему БД, содержащую информацию об автомобильном парке организации. БД содержит сведения о водителях и автомашинах.О водителях машин хранится его ФИО, категория (A,B,C,D,E B), водительский стаж. Для каждого автомобиляхраниться его марка; год выпуска; класс автомобиля (грузовой, легковой); цвет; техническое состояние (аварийное, удовлетворительное, хорошее, отличное). В проектируемой БД за каждым водителем должна быть закреплена хотя бы одна машина.Каждой машиной может управлять несколько водителей. Водители объединены в бригады, в каждой бригаде свой бригадир. БД разработана для информационной системы «Расчет заработной платы». Начисление проводится один раз в месяц на основании табеля, приказа о зачислении, увольнении или перемещении сотрудников в соответствии со штатным расписанием и ставками. Табель ведется ежемесячно. Ведомость начисления выдается по каждому подразделению. Необходимо создать БД, в которой приведены данные по спецификации изделия. Изделие состоит из узлов, узлы - из деталей, кроме этого детали могут входить напрямую в изделие. Требуется рассчитать потребность в деталях для обеспечения плана выпуска готовой продукции. Детали и узлы могут быть как собственного изготовления, так и покупными. Создать БД для начисления заработной платы сотрудникам предприятия. При расчете учитываются начисления: премии по подразделению; оплаты за работу в выходные и праздничные дни; оплаты больничных листов, выплаты материальной помощи, доплата за вредность. Удержания: кредит; ссуда; зачисление убытка. БД создается для аптеки. В аптеке могут реализовываться медицинские, гомеопатические препараты, медицинские товары, медицинская техника. Медицинские препараты группируются по категориям заболеваний: ЛОР заболевания, антибактериальные, витаминные, грибковые, антисептические. Продажа лекарств осуществляется упаковками, дозами, миллилитрами, миллиграммами, таблетками. Упаковка - ампула, канвалюта. К медицинским товарам относятся марля, шприцы, вата, бинт и т.д. Медицинская техника – это индивидуальные коляски, костыли и др. Создать БД для учета материальных ценностей на предприятии. В БД хранятся сведения о поставщике, цене, количестве, дате поступления, ответственном лице, причине и дате списания материальной ценности. Данные используются для составления Акта на списание, Инвентаризационной описи. Составить БД, которая содержит сведения о купле-продаже товара. Основанием для оплаты товара по безналичному расчету служит Счет. Отпуск товара выполняется по Накладной. Учетная информация по продажам представлена в Счете-фактуре, содержащем перечень проданных товаров, а также сведения об оплате. Требуется создать базу данных КАДРЫ, хранящую данные по учету личного состава, включающую штатное расписание, сведения о сотрудниках, структуру предприятия, приказы о назначениях и перемещениях. Создать базу данных для учета оборудования на предприятии. В БД хранятся такие сведения об оборудовании, как его модель, производственная мощность, завод - изготовитель, дата ввода в эксплуатацию, первоначальная стоимость, срок годности, размещение. Разработать БД по учету движения товара на складе. БД должна хранить данные о товаре, поставщиках, потребителях. Поступление товара осуществляется на основании Приходной накладной, отгрузка – Расходной накладной. Организация занимается сдачей торгового оборудования в аренду. Учет оборудования ведется по количественному составу, на каждый тип оборудования заполняется карточка складского учета. В нее заносятся тип оборудования, инвентарный номер, дата поступления, номер документа, от кого получено, кому отпущено. При передаче оборудования в аренду выписывается акт приема-передачи с указанием оплаты и срока аренды. При возврате оборудования составляется акт на техническое состояние. Создать БД для учета материала на складе предприятия. Материал поступает от поставщиков согласно Приходным ордерам. Отпуск материала в производство осуществляется по Требованию. Создать базу данных Адресная книга, содержащую адреса юридических лиц нашего города, а также других городов и других стран. В книге даны также краткие сведения о деятельности организации, руководителе. 7 Варианты заданий для самостоятельной работы по созданию БД Создайте базу данных «Предприятие», согласно предлагаемой структуре. Наполните ее данными. Создайте запросы к БД из предлагаемого списка. Какие материалы и в какомколичестве поступили от поставщика p01 Определить перечень материалов, необходимых для изготовления изделия 001 Определить себестоимость по изделию Шкаф в Евро на 28 декабря. Создать форму, в которой вывести себестоимость изделия Комод во всем видам валюты на 28.12.15. Создать форму, в которой вывести изменение цены Кресла за декабрь месяц в долларах Определить перечень оборудования, необходимого для изготовления изделия 001 Определить расход материалов для планового выпуска изделия Шкаф Написать запрос, в результате которого можно получить себестоимость планового выпуска изделий во всем видам валюты на 25.12.15. Определить количество времени, которое необходимо для изготовления 2000 Шурупов Какое оборудование потребует наименьших затрат времени для изготовления болтов Вывести сведения о поставках материала за вторую декаду декабря. Вывести сведения о расходе материала за первую неделю декабря. Внести сведения о должностях, занимаемых работниками подразделения 01. Составить запрос, который выбирал бы наибольшую производительность для каждой детали. Вывести перечень изделий, которые используют деталь 404 Определить изделия, себестоимость которых не превышает 200$. Производство, какого изделия потребует наименьших расходов материала. Просмотреть, как будет изменяться оптовая цена за декабрь для письменного стола в Евро. Добавить в базу данных таблицу «Табель рабочего времени» и внести данные за первую неделю января 2015 года. Составить форму, содержащую сведения об использовании деталей в изделии. Составить форму, содержащую перечень изделий, для изготовления которых потребуется Болт. Рассчитать массу Шкафа Определить прибыль от продажи 100 комодов. Определить потребность шурупов на плановый выпуск продукции Ниже приведены варианты экранных форм, которые нужно построить для БД «Предприятие». Рассчитайте расход материалов на изделие «Шкаф» по форме |