Цель лабораторной работы
Скачать 0.92 Mb.
|
Основы языка SQLЯзык SQL – язык высокого уровня для создания запросов в реляционной базе данных. Основной оператор языка SQL это - SELECT : SELECT [ALL | DISTINCT] список полей данных FROM список таблиц [WHERE условие поиска] [GROUP BY имя_столбца [, имя_столбца]…] [HAVING условие поиска] [ORDER BY критерий упорядочивания]. Обязательными в запросе на SQL являются фразы SELECT и FROM, остальные могут использоваться для более подробных запросов. Во фразе WHERE указывается условие отбора записей из таблиц, имена которых указаны в FROM. Фраза GROUP BY объединяет результирующее множество в группы, определяемые именами полей, указанными за GROUP BY. Все строки с одинаковыми значениями полей объединяются в одну строку. Запрос на языке SQL можно набрать в командном окне либо создать запрос с помощью Конструктора запросов. Удобное средство – использование оператора SQL для соединения двух таблиц. Например, соединить две таблицы из первой лабораторной работы Сотрудники (Employees) и Отдел (Department) по общему атрибуту Depnum: 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 Department 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]. При выполнении запроса открывается окошко, в которое вводится искомое значение параметра: При вводе в поле «number» значения номера отдела, например, 101 результат выполнения запроса будет выглядеть примерно так: Запрос на добавлениеЭквивалент запроса на добавление на языке 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"));Перед выполнением запроса, чтобы убедиться, что будут обновлены нужные записи, щелкните на кнопку Вид: отобразятся те записи, которые будут обновлены. Теперь можно выполнить запрос. Для этого дважды щелкните по названию запроса или нажмите Запуск . Так же, как и при добавлении записей в таблицу, Access выдаёт сообщение о количестве обновляемых записей и запрашивает подтверждение на обновление. Вы можете подтвердить обновление записей или отвергнуть. Создание итогового запросаВыбираем в главном меню: Создание Мастер запросов Создаем простой запрос. Открывается окно: Нажимаем ОК Выбрали поля: Salary и depnum. Группируем по номеру отдела depnum.Выбираем итоговый Отмечаем Avg (среднее значение): Структура итогового отчета – подсчет средней зарплаты по отделам Результат запроса: Выполнение лабораторной работыВыполнить работу в соответствии с вариантом. Варианты лабораторной работыДля вариантов представленных в лабораторной работе 1 подготовьте запросы. Разработать запросы: Перечень кодов особых случаев эксплуатации, Список инцидентов, Список операторов. Подготовьте запросы: Список инцидентов для заданного кода особого случая эксплуатации, Список операторов, работавших в предыдущем месяце. Выполните 3-4 запроса по заданию преподавателя. Разработать запросы: Список ремонтных заводов, Выполненные ремонты, Список самолетов, Список операторов. Подготовьте запросы Список выполненных ремонтов для данного ремонтного завода, Список заводов, на которых ремонтировался данный тип самолета. Выполните 3-4 запроса по заданию преподавателя. Разработать запросы: Перечень отделов_универмага, Список продавцов, Список товар в отделе, Продажи за месяц. Подготовьте запросы: Список товаров, проданных за прошлый квартал, Список продавцов, продавших наибольшее количество товаров. Выполните 3-4 запроса по заданию преподавателя Разработать запросы: Перечень кафедр, Список преподавателей, Список дисциплин, Расписание. Подготовьте запросы: Список преподавателей, работающих на данной кафедре, Список дисциплин, читаемых данным преподавателем. Выполните 3-4 запроса по заданию преподавателя Разработать запросы: Список работников Автосервиса, Перечень автомобилей на ремонте, Наличие запчастей, Список операторов. Подготовьте запросы: Список работников автосервиса, выполнявших ремонты за прошлый квартал, Список запчастей для данного типа автомобиля. Выполните 3-4 запроса по заданию преподавателя Разработать запросы: Перечень Кодов зон контроля, Перечень самолетов, Список дефектов, Список операторов. Подготовьте запросы: Список кодов зон контроля для данного типа самолета, Список дефектов для данного типа самолета за прошлый месяц. Выполните 3-4 запроса по заданию преподавателя ОтчетОтчет по лабораторной работе должен содержать: Вариант задания. Краткое описание выполненной работы. Окна Конструкторов, использованных в работе. Распечатку всех отчетов. Варианты всех запросов, выполненных в лабораторной работе, в виде операторов SQL и комментарий к ним. Контрольные вопросыОсновные составные части языка SQL. Что такое запрос? Какова последовательность проектирования запросов? Какие основные компоненты запросов? Как определяются компоненты запросов? Как подготовить запрос на SQL в командном окне? Лабораторная работа №4Создание и настройка отчетов Цель работы Изучить среду проектирования баз данных в MS Access; Создать отчеты для печати; Ознакомиться со всеми типами отчетов; Подготовить отчет по результатам лабораторной работы. В MS Access входит несколько средств для создания отчетов: Автоотчет; Мастер отчетов (для создания отчетов, основанных на одной или нескольких- таблицах); Мастер почтовых наклеек; Мастер диаграмм; Конструктор отчетов. АвтоотчетАвтоотчет (AutoReport) — это наиболее простое средство Access для создания отчета на основе таблицы или запроса. Это средство работает быстрее, чем мастер. Все что необходимо сделать для создания отчета с помощью этого средства указать имя таблицы или запроса и при желании выбрать тип Автоотчета: ленточный или в столбец. Access включает в отчет все поля базовой таблицы или запроса, Автоотчет в столбецАвтоотчет в столбец (Columnar AutoReport) отображает записи из таблицы и запроса и располагает эти записи по столбцам. Создание Автоотчета в столбец с применением последнего использованного стиля При создании Автоотчета с помощью диалогового окна Новый отчет (New Report) ему назначается стиль, который назначался при последнем запуске Мастера отчетов или при последнем использовании Автоформата. Если ни одного из этих средств создания отчетов еще не было задействовано, Автоотчету назначается стиль Обычный (Normal). Чтобы создать Автоотчет с применением последнего использованного стиля, выполните следующие действия. Щелкните на кнопке Отчет (Reports) в главном меню Создание. Когда вы закроете окно отчета, в ответ на предложение сохранить изменения щелкните на кнопке Да (Yes) и задайте имя для нового отчета. Ленточный автоотчетЛенточный автоотчет (Tabular Auto Report) отображает записи в виде таблицы. При таком оформлении каждое поле базовой таблицы или запроса представлено отдельным столбцом, а каждая запись — отдельной строкой. В результате данные отображаются точно так же, как в таблице или запросе в режиме Для создания ленточного Автоотчета выполните следующие действия. Выделите нужную таблицу. В главном меню выберите Создание и щелкните на кнопке Отчет (Report) Щелкните дважды на пункте Автоотчет: ленточный (AutoReport: Tabular). Когда вы закроете окно отчета, в ответ на предложение сохранить изменения щелкните на кнопке Да (Yes) и задайте имя для нового отчета. Варианты отчетов: Отчет по таблице Employee Отчет по таблице Project Для создания отчета собственными силами: в главном меню выбираем Создание Мастер отчетовоткрывается окно, представленное на рисунке ниже: Из раскрывающегося списка таблиц или запросов выбираем таблицу или запрос и выбираем поля, которые будут отражены в отчете Следующий шаг – выбираем сортировать ли строки отчета и метод сортировки. Последний шаг выбираем форму макета для отчета: Построим отчет, сформированный из двух таблиц: Запрос: «Какие сотрудники работают в отделах, с указанием их зарплат, начальников отделов и номеров отделов»: Можно дополнительно форматировать отчет, добавив число строк отчета Можно выполнить группировку по заданному показателю (в нашем случае по идентификатору отдела deptid): Итоговый отчет с группировкой данных:Открываем Мастер отчетов, выбираем поля deptid и salary, группируем по полю deptid, вычисляем средние зарплаты по номерам отделов. Далее в следующем окне нажимаем кнопку Итоги И выбираем AVG (среднее) и только Итоги: Получаем отчет: Представлен вариант отчета, составленного из двух таблиц с подсчетом количества записей в поле группировки. Возможно создание отчета с параметром. Он создается на основе запроса с параметром. Таким образом в лабораторной работе построены основные типы отчетов в MS Access. Варианты лабораторной работы:Подготовить отчеты для баз данных, созданных в первой лабораторной работе. ОтчетОтчет по лабораторной работе должен содержать: Вариант задания Краткое описание выполненной работы. Окна Конструкторов, использованных в работе. Последовательность шагов при создании отчетов Примеры подготовленных отчетов Контрольные вопросыКакова последовательность проектирования отчета? Какие основные компоненты отчета? Как меняется формат отчета? |