Методические рекомендации по выполнению практических работ профессионального модуля
Скачать 2.97 Mb.
|
Задание для самостоятельной работы Осуществить поставленные задачи для конкретной информационной системы (выби- рается обучающимся). Список рекомендуемой литературы 1. Интеграция информационных систем предприятия. — Режим доступа: http://www.intuit.ru/studies/courses/13833/1230/lecture/24065. — Дата обращения: 20.06.2017. 2. Информационные системы. — Режим доступа: http://www.intuit.ru/ studies/courses/3735/977/lecture/14685?page=4. — Дата обращения: 20.06.2017. 3. Информационные системы. — Режим доступа: http://edu.dvgups.ru/METDOC/ITS/ STRPRO/INF_TEH_STR/METOD/SULDIN/frame/5.htm. — Дата обращения: 20.06.2017. 10 Практическая работа №5–6 Темы: Выполнение работ по манипулированию данными с использованием языка за- просов баз данных. Выполнение работ по определению ограничений целостности данных Задачи: 1. Определить понятия «целостность данных», «нормализация» и «нормальная фор- ма». Дать краткую характеристику. 2. Осуществить работу по манипулированию данными в БД. 3. Нормализовать БД. Теоретическое обоснование База данных — это совокупность данных и связей между ними. В качестве примера можно привести пример структуры организации, содержащей отделы, сотрудников отделов, их план работ. Access— это гибкая программа, позволяющая работать как с простыми, так и со сложными базами данных. Следует добавить, что это реляционная база данных, то есть база данных, которая позволяет определять отношения между различными категориями инфор- мации (как, например, между данными об отделах и данными о их сотрудниках). В результа- те вы имеете возможность пользоваться данными совместно. Начало работы Чтобы запустить Access, щелкните на кнопке Microsoft Access 2007 на панели инст- рументов Microsoft Office или на кнопке Пуск (Start) на панели задач и выберите команду Программы > Microsoft Access (Programs > Microsoft Access). Когда Access начнет работу, вы увидите окно диалога, показанное ниже: Начальное окно диалога Access позволяет создать новый файл базы данных Access или открыть файл, с которым вы уже работали. Основу базы данных составляют хранящиеся в ней данные. Однако в базе данных Access есть и другие важные компоненты, которые принято называть объектами. Ниже при- водится список типов объектов, с которыми вы будете работать. 1. Таблицы — содержат данные. 2. Запросы — позволяют задавать условия для отбора данных и вносить изменения в данные 3. Формы — позволяют просматривать и редактировать информацию. 4. Отчеты — позволяют обобщать и распечатывать информацию. Примечание: Все работы по созданию, изменению, добавлению в таблицах, формах, запросах делаются в режиме Конструктора (правая кнопка мыши на имени объекта и Конст- руктор). 11 Следующий этап после составления плана полей для таблиц — это выбор типа полей. Тип поля определяет данные, которые можно вводить в это поле, формат, который может иметь значения этого поля, и операции, которые можно выполнять с данными этого поля. В Access имеется множество типов полей. Они перечислены ниже с указанием назна- чения каждого типа. Счетчик (AutoNumber). В это поле Access автоматически вводит номер при добавлении каждой новой записи в таблицу. Денежный (Currency). Этот тип поля предназначен для ввода денежных значений. Да- та/время (Date/Time). В это поле вводится дата или время, либо их комбинация. Гиперссылка (Hyperlink). Данное поле содержит адреса гиперссылок, которые исполь- зуются для перехода к Web-страницам, объектам базы данных или другим файлам. Мастер подстановок (Lookup Wizard). В поле этого типа запускается Мастер подста- новок, который налагает ограничения на значения в поле. Значения/результаты поиска могут поступать из вводимого вами списка, таблицы или запроса. Поле MEMO (Memo). Поле этого типа может содержать текст неограниченной длины. Числовой (Number). В поле этого типа могут вводиться числовые данные любого формата. Поле объекта OLE (Object Linking and Embedding, Связь и внедрение объектов) со- держит такие объекты, как рисунки и документы Word. Текстовый (Text). Поле этого типа содержит текст: письма, числа и другие символы. Логический (Yes/No). В поле данного типа сохраняется одно из двух возможных зна- чений: «истина» или «ложь». Этими значениями могут быть «да/нет», «истина/ложь», «муж- чина/женщина» и т. д. Выбираем в главном меню: Создание — Конструктор таблиц. Создание таблицы базы данных Employee в конструкторе таблиц. Набираем имя поля и, в следующем столбце, из раскрывающего списка выбираем тип данных. Для поля, хранящего изображение, выбираем тип поля Поле объекта OLE Правой кнопкой выбираем поле, которое будет ключевым и, в раскрывшемся меню указываем, что это ключ. Внизу в окне Свойства поля для стороны связи 1 указываем, что совпадения не допускаются. 12 Для каждого типа поля в свойствах поля можно уточнить детали выбранного типа данных. Для поля Числовой, на рисунке вверху , можно выбрать размер формат, число деся- тичных знаков и т.д. Как только в макет таблицы добавлено поле, вы можете перетащить его на новое место. 1. Для выделения поля щелкните на области выделения строки слева от названия поля (чтобы выделить несколько идущих друг за другом полей, следует нажать кнопку мыши и протащить указатель по нескольким строкам, не отпуская при этом кнопки мыши). 2. Установите курсор на выбранном поле (выбранных полях), нажмите кнопку мыши и перетащите поле (поля) на новое место. Во время перетаскивания снизу указателя появится небольшой пунктирный прямоугольник, а тонкая горизонтальная линия укажет вам возмож- ное место вставки. Вставить поле в середину списка полей, а не в конец списка, можно следующим образом. 1. Щелкните на области выделения той строки, над которой необходимо вставить строку нового поля. 2. Нажмите клавишу Insert или щелкните на кнопке панели инструментов Insert Rows (Добавить строки). 3. Введите в новую строку название поля и задайте его тип. Удалить поле еще проще, чем вставить. 1. Выберите поле (поля), которое (которые) необходимо удалить. 2.Нажмите на клавишу Delete или щелкните на кнопке Удалить строки (Delete Rows) на панели инструментов. Если вы допустили ошибку, выберите в меню Правка (Edit) пункт Отменить удале- ние (Undo Delete), и удаленные строки вернутся на прежнее место. Однако если после удале- ния вы выполнили другое действие, то вы уже не сможете отменить удаление. В этом случае существует единственный способ восстановить поля таблицы, но при условии, что таблица была предварительно сохранена, — необходимо закрыть окно конструктора без сохранения внесенных вами в макет таблицы изменений. В пункте главного меню «Работа с базами данных» создаем схему базы данных. Схема базы данных создается из главного меню: «Работа с базами данных» — Схема базы данных В открывшемся поле появляется окно, из которого добавляем таблицы для создания схемы. Выбираем таблицы и щелкаем кнопку Добавить. MS Access поддерживает связи между таблицами: один- к-одному (1:1), один-ко-многим (1:М), много-к- одному (М:1). Отношение один-к-одному означает, что каждая запись в одной таблице соответствует только одной за- писи в другой таблице. В качестве примера можно рас- смотреть отношения между списком служащих предприятия и таблицей, содержащей их служебные ха- рактеристики. Наиболее часто встречающимся является тип от- ношения один-ко-многим. В качестве примеров могут быть рассмотрены отношения между покупателем и ку- пленными им товарами, между предприятием и работающими на нем сотрудниками. Анало- гичный тип отношения существует между компьютером и входящими в него компонентами. Для этого протягиваем связи между атрибутами, связывающими таблицы. Открывает- ся окно Изменение связей. Для обеспечения целостности ставим галочку в метке Обеспече- ние целостности данных и протягиваем связи между атрибутами, связывающими таблицы. У таблицы, у которой выделен ключ, проведенная связь имеет значение 1. У связанной (подчи- ненной) таблицы будет сторона связи М (∞). 13 Примечание: Связи необходимо создать до начала ввода данных. После создания связей, данные надо начинать вводить в таблицы, на стороне связи со значением 1. Поля типа Поле объекта OLE (OLE Object) содержат такие данные, как рисунки, до- кументы Word, звукозаписи или объекты иного формата, созданные в других приложениях. Когда вы вводите данные в поле объекта OLE, у вас есть два варианта. Вы можете создать: связанный объект, который содержит ссылку на рисунок, документ или другой объект OLE в таблице Access. При двойном щелчке на поле объекта OLE, Windows открывает при- ложение, в котором был создан объект, и вы можете его t изменить; внедренный объект, который содержит копию объекта OLE в таблице. Изменения, вносимые в исходный объект, не отражаются на объекте, хранящемся в базе данных. Для ввода изображения в поле типа Поле объекта OLE необходимо щелкнуть правой кнопкой на поле и, из раскрывшегося списка выбираем Вставить объект. Поле Фото в таблице Сотрудники имеет тип Поле объекта OLE (OLE Object). Что- бы понять, как работает объект OLE, попробуйте вставить в это поле связанное изображение (уже существующий файл с расширением .jpg). В режиме таблицы установите курсор в поле Фото той записи, которую вы редактируете. Щелкните правой кнопкой на поле и выберите в контекстном меню команду Доба- вить объект (Insert Object) либо выберите команду Вставка Объект (Insert» •Object). От- кроется показанное ниже диалоговое окно Вставка объекта (Insert Object). Состав списка Тип объекта (Object Type) зависит от программ, установленных на компьютере. Установите переключатель Создать из файла (Create from File). После того как изменится вид диалогового окна, щелкните на кнопке Обзор (Browse). В диалоговом окне Обзор (Browse) выберите для связи файл с рисунком. Например, файл С:\Мои документы\Мои рисунки\нпд.jpg. Вернувшись в диалоговое окно Вставка объекта (Insert Object), установите флажок Связь (Link). Если вы предпочитаете, чтобы в поле объекта OLE объект отображался в виде значка, установите флажок В виде значка (Display as Icon). В результате вместо названия типа объ- екта в поле будет отображен его значок. Щелкните на кнопке ОК, чтобы вернуться к таблице в режиме таблицы. В окне в режиме таблицы вы увидите ссылку на тип связанного объекта OLE. Напри- мер, если файлы с расширением .jpg связаны на вашем компьютере с приложением Microsoft Photo Editor, тогда поле объекта OLE будет выглядеть следующим образом: Если вы хотите хранить копию фотографии в таблице Сотрудники (а не связывать объект в таблице с исходным файлом), необходимо добавить в поле Фото внедренный объект. 1. Перейдите в поле Фото (или любое другое поле объекта OLE, с которым вы работаете). 2. Щелкните правой кнопкой в ячейке поля и выберите в контекстном меню команду Добавить объект (Insert Object). 3. Установите переключатель Создать из файла (Create from File). 4. Щелкните на кнопке Обзор (Browse) и выберите файл рисунка. 5. Щелкните на кнопке ОК в диалоговом окне Вставка объекта (Insert Object), не ус- танавливая флажка Связь (Link). Вернувшись к окну таблицы, вы увидите в поле объекта OLE такой же значок (или указание на тип объекта), как в примере из предыдущего раздела. Вы можете открыть объект в его «родном» приложении и отредактировать его. Но при этом все изменения сохранятся только в копии объекта, хранящейся в поле объекта OLE, — в исходном файле изменения не отразятся. В поле фотографии появляется слово Пакет. Чтобы просмотреть содержимое поля объекта OLE, дважды щелкните на нем, чтобы открыть приложение, в котором был создан объект. Например, если вы вставили связанный 14 документ Word, то при двойном щелчке на этом объекте документ откроется в окне прило- жения Word, где вы сможете его отредактировать. После двойного щелчка на нем открывается изображение. Запросы предназначены, прежде всего, для отбора данных. Вы можете создать простой запрос для поиска записей в одной таблице, а можете сформулировать сложный запрос, вклю- чающий в себя данные из нескольких таблиц и учитывающий множество условий отбора. Запрос на выборку Продемонстрируем довольно простой запрос: с помощью него мы находим все записи в таблице Отделы для Ивана Петрова. Такой тип запроса называется запросом на выборку (select query). Он предназначен для поиска записей, удовлетворяющих сформулированными вами условиям отбора записей. Позже мы более подробно остановимся на функциях запросов на выборку и рассмот- рим несколько конкретных примеров работы в окне конструктора запросов (Query Design). Возможности конструктора запросов не ограничены созданием только одного типа запросов — запросов на выборку. Запросы можно использовать не только для поиска запи- сей, но и для внесения в них изменений. С помощью запроса можно создать перекрестное представление данных (путем создания перекрестного запроса), создать таблицу, удалить из нее определенные записи или же добавить записи в одну таблицу из другой. Существуют следующие типы запросов. Перекрестный запрос. С помощью запросов этого типа вы можете сделать обзор по категориям данных, то есть обобщить информацию. Например, можно выяснить, каков был объем продаж по каждому продукту в каждом месяце прошлого года. При создании запросов этого типа можно воспользоваться Мастером перекрестных запросов (Crosstab Wizard). Запрос на создание таблицы. Когда вы превращаете запрос на выборку в запрос на создание таблицы, то записи, полученные в результате выполнения запроса, помещаются в новую таблицу. Запрос на обновление. С помощью запросов этого типа можно внести изменения в группу записей таблицы (например, в некотором поле изменить все прописные символы на строчные), а также выполнить редактирование данных, или внести изменения в одну табли- цу, используя данные из другой. Запрос на добавление. Запросы этого типа позволяют добавлять данные из одной таблицы в другую. Запрос на удаление. Запрос на удаление позволяет исключить из табли- цы целую группу записей, вместо того чтобы удалять каждую запись из таблицы вручную. Язык SQL – язык высокого уровня для создания запросов в реляционной базе данных. Основной оператор языка SQL это - SELECT : SELECT [ALL | DISTINCT] список полей данных FROM список таблиц [WHERE условие поиска] [GROUP BY имя_столбца [, имя_столбца]…] [HAVING условие поиска] [ORDER BY критерий упорядочивания]. Обязательными в запросе на SQL являются фразы SELECT и FROM, остальные могут использоваться для более подробных запросов. Во фразе WHERE указывается условие отбо- ра записей из таблиц, имена которых указаны в FROM. Фраза GROUP BY объединяет ре- зультирующее множество в группы, определяемые именами полей, указанными за GROUP BY. Все строки с одинаковыми значениями полей объединяются в одну строку. Запрос на языке SQL можно набрать в командном окне либо создать запрос с помощью Конструктора запросов. Запрос на языке SQL можно набрать в командном окне либо создать запрос с по- мощью Конструктора запросов. Удобное средство – использование оператора SQL для соединения двух таблиц. На- пример, соединить две таблицы из первой лабораторной работы Сотрудники (Employees) и Отдел (Department) по общему атрибуту Depnum: 15 Select * from Department, Employees where Department.depnum = Employees.depmum Такой же запрос: Select * from Employees join Department on Department. depnum = Employees. Depnum Возможны вложенные запросы: Select lastname from Employees, where depnum in (select depnum from De- partment where depnum = d101 or depnum = d102) Существуют операторы вставки (insert), обновления (update) и удаления (delete) дан- ных в/из таблиц. Оператор insert вставляет строку в таблицу: Insert into bookauth values (1234, 344) в таблицу Bookauth вставляются значения в по- рядке следования атрибутов в таблице. Insert into author (author_id, first_name, last_name) values (125, ‘Anton’, ‘Antonov’) в таблицу будут вставлены значения для перечисленных полей, если остальные поля помечены как NULL – необязательны для заполнения. Оператор Update изменяет одну или несколько строк таблицы: Update bookauth set author_id = 567 where book_id = 111 оператор меняет значение поля author_id для всех значений поля book_id равных 111. Оператор Delete удаляет строки таблицы по заданному условию: Delete from authors where city = London Для создания запроса используется Конструктор запросов. Из главного меню: Главное меню — Создание — Конструктор запросов Открывается окно Конструктора, в котором предлагается выбрать таблицы для созда- ния запроса. Выбираем нужные нам таблицы, нужные поля. Для этого кнопкой Добавить добавля- ем таблицы в поле конструктора. В таблице ниже выбираем нужные поля из соответствую- щих таблиц Конструируем запрос «Вывод сотрудников отдела, начальник которого Шифрин» в конструкторе запросов: Выбираем поля из раскрывающегося списка: manager, lastname, birthdate. В поле Условие отбора задаем значение ‘Shifrin’. Manager = ‘Shifrin’ AND birthdate = ’02.02.1980’, то условие набирается в строке «Ус- ловие отбора». Если условие типа «ИЛИ», то условие набирается в строках «Условие отбора» и стро- ке «ИЛИ» Чтобы запрос выполнить, нажимаем в верхнем левом углу красный восклицательный знак. Можно указать поле, значение которого заранее не известно и значение которого вво- дится при выполнении запроса. Например, Номер отдела depnum. В строку «Условие отбо- ра» в квадратных скобках вводится текст, который появится в окошке. В нашем случае [number]. При выполнении запроса открывается окошко, в которое вводится искомое значение параметра. Эквивалент запроса на добавление на языке SQL можно получить нажав правой кноп- кой мыши на поле запроса: INSERT INTO empl (deptid, lastname, birthdate, salary, address, projnum) SELECT empl.deptid, empl.lastname, empl.birthdate, empl.salary, empl.address, empl.projnum FROM empl; Запрос на обновление: Например, нам надо изменить фамилию сотрудника с “monin” на “manin”. Эквивалент запроса на обновление на языке SQL: UPDATE empl SET empl.lastname = "monin" WHERE (((empl.lastname)="manin")); |