Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MS Access.doc
Скачиваний:
19
Добавлен:
08.05.2019
Размер:
18.07 Mб
Скачать

Построитель выражений

Условие отбора записей и другие выражения можно формировать при помощи Построителя выражений (команда Построить контекстного меню). Построитель выражений, имеющийся в Access, очень прост и удобен. Он позволит избежать ошибок и описок при формировании выражений. Рекомендуем его использовать.

Кроме обычных операторов сравнения Access предоставляет три специальных оператора, применяемых для отбора данных, вводимых в наборе записей запроса. Они представлены в таблице.

Оператор

Описание

BETWEEN

Определяет диапазон значений. Например, Between 10 and 20, указывает числа от 10 до 20

LIKE

Полезен при поиске образцов в текстовых полях. В образец поиска можно включать символы шаблона. ? заменяет любой одиночный символ в данной позиции, * - обозначает любое количество символов в данной позиции. # указывает на то, что в данной позиции должна стоять цифра и т.д. Например, для отбора всех фамилий, начинающихся на “С-” можно указать Like “С*”.

Задание

  1. Добавьте в таблицу Адреса поле «Пол».

Создайте запросы на выборку:

  1. Список всех жителей мужского пола (Фамилия).

  2. Список всех жителей, у которых фамилии начинаются на букву «П» (Фамилия и Имя) (см. таблицу).

  3. Вывести список жителей, которые или проживают по улице Рязанской, или поле «Имя» - Василиса.

  4. Покажите созданные запросы учителю.

Запросы с вычисляемыми полями

Эти запросы позволяют создавать новые поля на основе значений других полей таблицы. Для создания вычисляемого поля следует в строке Поле Бланка запросов задать выражение для вычислений (вместо того, чтобы перетаскивать туда поле какой-либо таблицы). При этом настоятельно рекомендуется пользоваться Построителем.

Задание

  1. Добавьте в таблицу Адрес поле «Дата рождения».

  2. Щелкните по кнопке создание запроса в режиме конструктора.

  3. Создайте запрос, который содержал бы список всех жителей с указанием возраста в годах. Для этого придется воспользоваться двумя встроенными функциями:

  • функцией Date(), которая возвращает текущую дату.

  • функцией Year(), которая возвращает год. соответствующий аргументу поставленному в скобках (год определяется как целое в интервале 1900-9999).

  1. Выберите таблицу: Адреса.

  2. В первое поле бланка запроса поместите поле Фамилия, во второе Имя.

  3. В третьем поле, с помощью Построителя выражений создайте выражение считающее возраст.

  1. Посмотрите, правильно ли работает данный запрос.

  2. Сохраните этот запрос под именем Полных лет.

Запросы на удаление и обновление

Все виды запросов на выборку создают временные результирующие таблицы, базовые таблицы при этом не изменяются. Тем не менее, существует особая группа запросов, которые называются запросами па изменение (или запросами действия). Они позволяют автоматически создавать новые таблицы и изменять уже имеющиеся. К этому виду запросов относятся: запросы на создание таблицы, на обновление данных, на добавление записей и на удаление записей.

Запросы действия приводят к необратимым изменениям в базе данных, поэтому следует относиться к ним с особой осторожностью!

Перед выполнением данной работы рекомендуется сделать резервную копию базы данных на случай нежелательных изменений в таблицах.

Все запросы действия строятся на основе запросов на выборку, т.е. сначала выполняется отбор данных, которые будут удалены или изменены. Запрос на выборку рекомендуется запустить на выполнение и убедиться, что данные отбираются правильно. Только после этого преобразуем запрос на выборку в конкретный запрос действия, используя соответствующую команду контекстного меню или меню Вид.

В больших базах данных не всегда удобно изменять информацию вручную. Например, ручное изменение значения текущего курса каждого студента при выполнении их массового перевода на следующий курс в конце учебного года может навсегда заморозить эксплуатацию базы данных. Ведь она предназначена для хранения сведений о тысячах студентов! Разве возможно для человека повторить однотипную операцию столько раз. Для автоматического изменения данных в MS Access предусмотрен специальный тип запроса - запрос на обновление. Он позволяет внести изменения во многие записи одной единственной операцией.

Для создания запроса на обновление сначала необходимо создать простой запрос, а затем определить его как запрос на обновление. Для этого нужно раскрыть список тип запроса на панели инструментов и выбрать запрос на обновление. По умолчанию созданный запрос относится к типу «Выборка». В результате на бланке запроса появится строка «Обновление», которую нужно заполнить выражением для автоматического изменения значения внутри поля.

Для того, чтобы внести изменения не во все записи, а только в те, где это необходимо, в бланке используют графу «Условие отбора».

Задание

  1. Создайте дополнительное поле в таблице Адрес, в котором содержится ежемесячная зарплата каждого жителя.

  2. Создайте запрос на обновление Прибавка - прибавка зарплаты. У каждого жителя увеличить зарплату на 1000 рублей.

  1. Создайте запрос на удаление: удалите из таблицы жителей мужского пола.

Запрос на удаление записей должен включать в себя следующее.

  • Таблицу, из которой удаляются записи. Перетащите звездочку (*) из списка полей этой таблицы в бланк запроса.

  • Поля, для которых определяются условия отбора. Перетащите нужное поле из списка полей таблицы в бланк запроса.

В бланке запроса в ячейки строки Удаление автоматически вводятся слова Из или Условие. Слово Из появляется в ячейке Удаление таблицы, из которой удаляются записи, а Условие в ячейке Удаление полей, для которых задаются условия отбора.

Обратите внимание, что при запуске запросов действия Access обязательно выдает запросы на подтверждение выполняемых действий. Выдачу окон подтверждения можно отменить, если в Окне параметров Базы данных (Сервис/Параметры) на вкладке Правка и Поиск снять флажки Подтверждение запросов на изменение и Подтверждение изменении записей.

Однако не советуем снимать подтверждения, т.к. они представляют собой замечательную возможность отказаться от нежелательных изменений в базе данных в самый последний момент.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]