Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
с 41-50.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
301.57 Кб
Скачать

47.Запрос на обновление.

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

Необходимо помнить приведенные ниже правила.

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

Дополнительные сведения о запросах на добавление см. в статье Создание запроса на добавление.

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

Дополнительные сведения о запросах на удаление см. в статье Использование запросов на удаление для удаления одной или нескольких записей из базы данных.

  • С помощью запросов на обновление можно изменять все данные в наборе записей.

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

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

  • Поля, источником записей для которых служат итоговые запросы или перекрестные запросы.

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

  • Поля в запросах на объединение.

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

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

48.Запрос на добавление.

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

  • Добавление полей на основании условий отбора. Например, необходимо добавить имена и адреса клиентов с очень крупными заказами.

  • Добавление записей, когда некоторых полей одной таблицы не существует в другой. Допустим, в таблице «Заказчики» пользователя имеется 11 полей, тогда как в таблице «Клиенты» другой базы данных из этих 11 полей имеется только 9. Можно использовать запрос на добавление только тех данных, которые находятся в соответствующих друг другу полях, а все остальные игнорировать.

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

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

 К НАЧАЛУ СТРАНИЦЫ

Создание и выполнение запроса на добавление

Процесс создания запроса на добавление состоит из следующих основных шагов.

  • Создание запроса на выборку

  • Преобразование запроса на выборку в запрос на добавление

  • Выбор конечных полей для каждого столбца в запросе на добавление

  • Выполнение запроса на добавление записей

 ПРИМЕЧАНИЕ.   Помните, что результаты работы запроса на добавление невозможно отменить, поэтому следует действовать очень аккуратно. Кроме того, следует помнить, что типы данных, заданные для полей в исходной таблице, должны быть совместимыми с типами данных для полей конечной таблицы. Так, например, можно добавить числа в текстовое поле, но нельзя добавить текст в числовое поле, если только не используется выражение вида (Val(ТекстовоеПоле)), чтобы сначала преобразовать данные в тип данных «Числовой».

Дополнительные сведения о типах данных и способах их использования см. в статье Изменение типа данных для поля.