Запрос на удаление с ограничением числа удаляемых записей

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

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

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

Для более полной информации об удаляемых записях можно добавить в бланк запроса дополнительные поля. Например, поле Марка. Тогда при переходе в режим таблицы будут видны все товары, подлежащие удалению. Если все нормально, дополнительные поля (не содержащие условий отбора) можно удалить, сохранить запрос, закрыть его и смело запускать на выполнение.

Полученный запрос представлен на рис. 3.2.

Рис. 3.2. Запрос на удаление с ограничением числа удаляемых записей

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: