Смекни!
smekni.com

Базы данных на логическоми и функциональном программировании (стр. 4 из 4)

3. Определить количество неудовлетворительных оценок, полученных по физике по факультетам.

4. Определить студента, имеющего максимальный средний балл на факультете «Информационных технологий».

Использование запросов на изменение

Запросы на изменение позволяют создавать новые таблицы и обновлять данные в уже имеющихся. Будем рассматривать четыре типа запросов на изменение:

- Запросы на создание таблицы создают таблицы на основе данных, содержащихся в результирующем множестве запроса.

- Запросы на добавление позволяют добавить в таблицу создаваемые запросом данные.

- Запросы на удаление удаляют из таблицы записи, которые соответствуют данным результирующего множества запроса.

- Запросы на обновление изменяют значение существующих полей таблицы в соответствии с записями результирующего множества.

Создание новой таблицы при помощи запроса. Пусть требуется построить таблицу, в которой содержится перечень предметов и преподавателей, преподающих эти предметы, на различных факультетах с указанием полугодия, когда принимается экзамен. Реализовать этот запрос можно в два этапа. На первом этапе осуществляется разработка запроса на выборку данных, как это было показано выше. Бланк запроса должен иметь вид:

Поле: FIOP Predm Семестр: Iif(Month([Vedom]![DataEkz])>8, ”Осень”, “Весна”
Имя таблицы: Prep Predmet
Сортировка:
Вывод на экран: Ú Ú Ú
Условие отбора:
или:

Убедитесь в правильности выполнения запроса. Создайте на его основе таблицу. Для этого выберите команду «Запрос. Создание таблицы». Введите Ведение предметов в поле «Имя таблицы». Нажмите на панели инструментов кнопку «Запуск». Выводится приглашение подтвердить добавление указанного числа записей. Нажмите кнопку «Да». Убедитесь, что таблица создана.

Создание запросов на добавление данных. Запрос на добавление данных создает структуру новой таблицы на основе записей запроса. Запрос на добавление включает новые данные в уже существующую таблицу. Для построение запроса на добавление выбирается команда «Запрос. Добавление».

Здесь следует учитывать, что в бланке запроса появиться новая строка Добавление. В этой строке указываются поля таблицы, в которую происходит добавление данных, а в строках Поле и Имя таблицы – откуда происходит добавление.

Запросы на удаление записей. Создайте запрос на выборку и включите в него все поля (перетащите элемент списка полей *), а затем добавьте поля, определяющие критерий отбора уничтожаемых данных. Если не задать условие, то, преобразовав запрос на выборку в запрос на удаление и выполнив его, можно удалить все записи используемой таблицы.

Для преобразования запроса на выборку в запрос на удаление выберите команду «Запрос. Удаление». Строки «Сортировка» и «Вывод на экран» исчезают, появляется строка «Удаление». Значение «Из» в первой ячейке строки «Удаление» вместе с выражением, заданным в ячейке «Поле», указывают откуда произойдет удаление. Столбцы со значением «Условие» в строке «Удаление» определяют критерий отбора записей для удаления.

Запросы для обновления записей. Запросы на обновление позволяют изменять данные в таблице. Они используются для обновления значений полей с помощью одного общего выражения. Для создания запроса на обновление требуется выполнить следующие действия:

Откройте «Конструктор запросов». С помощью «Запрос. Обновление» установите режим обновления. В бланке запроса появиться новая строка Обновление, в которой указывается значение, на которое будет меняться значение поля в данном столбце. Условие определяет критерий отбора записей для обновления.

Задание. Создать следующие запросы:

1. Создать таблицу с перечнем студентов факультета информатики, поступившим в институт в 2001 году, имеющим задолженности с указанием предметов, по которым имеются задолженности.

2. Создать запрос, позволяющий добавлять новую группу на факультет. Для обращения к запросу создайте форму.

3. Создайте запрос для удаления студентов, имеющих более пяти задолженностей в течение трех лет.

4. Создайте запрос, позволяющий изменять Ф.И.О. Преподавателя, который проводит экзамен.