- •Институт бизнеса и менеджмента технологий
- •«Компьютерные информационные технологии» кит -2
- •1. Технология проектирования запросов: запросы на выборку
- •2. Вычисления и группировка в запросах, запросы с параметрами
- •Подсчет данных с помощью строки итогов
- •Создание простого запроса на выборку
- •Добавление строки итогов
- •Скрытие строки итогов
- •Подсчет данных с помощью итогового запроса
- •Подсчет всех записей в запросе
- •Подсчет записей в группе или категории
- •3. Перекрестные запросы, запросы на создание таблицы
- •3.1 Перекрестный запрос
- •3.2 Запрос на создание таблицы
- •1. Поместите новую таблицу в текущую базу данных.
- •2. Поместите новую таблицу в другую базу данных.
- •4. Запросы на изменение и удаление данных
- •4.1 Запрос на изменение данных
- •4.2 Запрос на удаление данных
4.2 Запрос на удаление данных
Для удаления данных из базы данных Access можно использовать запросы двух типов. Тип используемого запроса зависит от того, что именно требуется удалить.
Если нужно удалить отдельные поля в записях одной или нескольких таблиц, следует использовать запрос на обновление, который заменяет существующие значения либо на пустое значение (то есть на отсутствие данных), либо на пустую строку (пару двойных кавычек без пробела между ними).
Запрос на обновление используется для удаления отдельных полей потому, что запрос на удаление по умолчанию удаляет только строки целиком. Процесс использования запроса на обновление для удаления данных состоит из следующих основных этапов: создание запроса на выборку и проверка, что он возвращает только те данные, которые нужно удалить; преобразование этого запроса в запрос на обновление с использованием значения NULL или пустых строк в качестве нового значения; выполнение этого запроса для обновления существующих данных.
Если требуется удалить записи (строки) целиком, следует использовать запрос на удаление.
По умолчанию запрос на удаление удаляет все данные каждого поля записи вместе со значением ключа, который делает эту запись уникальной. При выполнении такого запроса всегда удаляется строка таблицы целиком. Процесс состоит из следующих основных этапов: создание запроса на выборку и проверка, что он возвращает только те данные, которые нужно удалить; преобразование этого запроса в запрос на удаление и выполнение его для удаления данных.
Следует помнить: если запись, которую нужно удалить, является стороной «один» отношения «один-ко-многим», необходимо перед выполнением запроса изменить свойство этого отношения Дополнительные изменения необходимо внести потому, что по умолчанию Access запрещает удаление данных на стороне «один» в отношении «один-ко-многим».
Кроме того, помните, что после удаления или обновления записи или ее части невозможно отменить эти изменения, поэтому следует всегда делать резервную копию данных перед выполнением запроса на удаление. Процедуры, описанные в следующих разделах, объясняют, как создать запрос на обновление, который удаляет данные из отдельных полей, и запрос на удаление, который удаляет записи целиком. Обычно запросы на обновление или удаление используются только когда необходимо быстро обновить или удалить большое количество данных. Если нужно удалить несколько записей, и это проще сделать вручную, можно открыть таблицу в режиме таблицы, выбрать поля или строки, которые требуется удалить, и нажать клавишу DELETE.
Процесс использования запроса для удаления записей включает следующие основные этапы.
Спланируйте удаление. Следует убедиться в наличии необходимых разрешений на удаление данных и в том, что другие пользователи закрыли объекты, использующие соответствующие таблицы, а затем создать резервную копию базы данных.
Убедитесь, что база данных находится в надежном расположении или подписана цифровой подписью. Если ни одно из этих условий не выполняется, можно предоставить базе данных состояние доверенной на время сеанса работы с ней. Помните, что по умолчанию приложение Access блокирует все запросы на изменение (на удаление, обновление и создание таблицы), если базе данных не предоставлено состояние доверенной.
Если требуется удалить данные из нескольких таблиц, и эти таблицы связаны, включите параметрыЦелостность данных и Каскадное удаление связанных записей для каждой из связей. Это позволит запросу удалять данные из таблиц со стороны отношения «один» и «многие».
Создайте запрос на выборку и добавьте условия для получения нужного набора записей.
Если нужно удалить отдельные поля из таблицы, преобразуйте запрос на выборку в запрос на обновление, введите значение NULL или пустую строку ("") в качестве условия обновления и выполните запрос.
Если нужно удалить записи целиком, преобразуйте запрос на выборку в запрос на удаление и выполните его.
Прежде чем полностью или частично удалять записи из базы данных, выполните следующие действия.
Убедитесь, что база данных доступна не только для чтения. Для этого в проводнике Windows щелкните правой кнопкой мыши файл базы данных (с расширением accdb или mdb) и выберите в контекстном меню команду Свойства. В диалоговом окне Свойства должен быть снят флажок Только чтение.
Проверьте наличие необходимых разрешений на удаление записей из базы данных. При необходимости обратитесь к системному администратору или разработчику базы данных.
Убедитесь, что удаление записей не повлияет на работу других пользователей.
Попросите всех пользователей базы данных закрыть все таблицы, формы, запросы и отчеты, в которых используются удаляемые данные. Это позволит избежать конфликтов блокировки.
Если базу данных использует большое количество пользователей, может потребоваться завершить ее работу и открыть повторно в режиме монопольного доступа.
Нажмите кнопку Office и затем выберите команду Открыть.
Найдите и выделите базу данных, нажмите стрелку рядом с кнопкой Открыть и затем выберите команду Монопольно.
Создайте резервную копию базы данных, прежде чем изменять или удалять записи. Некоторые операции удаления можно отменить, однако создание резервной копии позволяет отменить все изменения.
При необходимости удалить данные из связанных таблиц следует помнить следующее правило. Если данные находятся на стороне «многие» отношения «один-ко-многим», можно удалять их без внесения изменений в отношение. Однако, если данные находятся на стороне «один» отношения «один-ко-многим», необходимо сначала изменить отношение, иначе приложение Access заблокирует удаление.
Процесс удаления связанных данных состоит из следующих основных этапов.
Определите, какие из записей находятся на стороне «один» отношения, а какие — на стороне «многие».
Если нужно удалить записи со стороны «один» отношения и связанные записи со стороны «многие», включите набор правил «Целостность данных» и разрешите операцию каскадного удаления. Далее описано понятие целостности данных и указано, как выполнить оба действия.
Если нужно удалить данные только на стороне «один» отношения, сначала удалите отношение, а затем удаляйте данные.
В ходе работы следует помнить, что хотя в большинстве случаев по умолчанию применяется правило целостности данных, база данных должна в первую очередь соответствовать следующим условиям.
Связанное поле главной таблицы должно быть первичным ключом или иметь уникальный индекс.
Связанные поля в главной и связанной таблицах должны иметь одинаковый тип данных. Существует два исключения из этого правила. Поле «Счетчик» можно связать с полем типа «Числовой», если для этого поля свойство Размер поля (FieldSize) имеет значение Длинное целое. Кроме того, поле «Счетчик», для которого свойство Размер поля (FieldSize) имеет значение Код репликации можно связать с полем типа «Числовой», для которого свойствоРазмер поля (FieldSize) имеет значение Код репликации.
Обе таблицы должны принадлежать одной базе данных Access. Если таблицы связаны, они должны быть в формате Access. Кроме того, необходимо открыть базу данных, в которой содержатся связанные таблицы, и включить правило целостности данных. Невозможно соблюдение правил целостности данных для связанных таблиц в базах данных других форматов, таких как книги Microsoft Office Excel 2007. Сведения о включении целостности данных см. в следующем разделе.
Запишите имена полей таблиц для каждой стороны отношения.
Откройте каждую таблицу и просмотрите данные в каждом поле; проверьте, действительно ли нужные поля содержат данные, которые требуется удалить.
Оставьте область Зависимости объектов открытой и выполните шаги, описанные в следующем разделе.
Если открывается база данных, которой не предоставлено состояние доверенной и которая находится не в надежном расположении, приложение Access по умолчанию блокирует выполнение всех запросов на изменение.
Преобразование запроса на выборку в запрос на удаление и удаление данных
Нажмите кнопку Конструктор, чтобы переключиться из режима таблицы в режим конструктора запросов.
На вкладке Конструктор в группе Тип запроса выберите команду Удаление.
При этом в Access запрос на выборку заменяется запросом на удаление, строка Вывод на экран в нижней части бланка запроса становится скрытой, а также добавляется строка Удаление.
Убедитесь, что в строке Удаление в столбце * (все поля) отображается Из. Слово Условие должно появиться в столбцах всех условий.
Убедитесь, что необходимо удалить эти данные, и нажмите кнопку Выполнить .
Будет открыто диалоговое окно для подтверждения удаления. Нажмите кнопку Да, чтобы удалить данные.
Если при попытке выполнения запроса ничего не происходит, проверьте, не появляется ли в строке состояния Access следующее сообщение:
Данное действие или событие заблокировано в режиме отключения.
Если отображается это сообщение, выполните следующие действия.
На панели сообщений нажмите кнопку Параметры.
Откроется диалоговое окно Параметры системы безопасности Microsoft Office.
Установите переключатель в положение Включить это содержимое и нажмите кнопку ОК.
Снова запустите запрос.
Если не отображается панель сообщений
Откройте вкладку Инструменты для базы данных и в группе Отображение щелкните Панель сообщений.
СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ
Бекаревич Ю.Б., Пушкина Н.В. Самоучитель Microsoft Access 2009. – СПб.: БХВ – Петербург, 2009. – 720 с.
Дейт К. Дж. Введение в системы баз данных, 6-е издание. – К.; М.; СПб.: Издательский дом "Вильямс", 2008. – 848 с.
Змитрович, А. И. Базы данных и знаний: учеб. пособие для студ. учреждений, обеспечивающих получение высш. образования по спец. управления / А. И. Змитрович, В. В. Апанасович, В. В. Скакун. - Минск: Издательский центр БГУ, 2007
Маклаков С.В. BPWin, ERWin. CASE – средства разработки информационных систем. – М.: Диалог-МИФИ, 2007.
Мандрыкин А.В. Информационные технологии в экономике: учеб пособие / А.В. Мандрыкин, А.В. Непышневский. Воронеж: ВГТУ, 2008, 235 с.
https://support.office.com — справка и поддержка Microsoft Office.
http://citforum.ru/database/osbd/contents.shtml - «Основы современных баз данных» Кузнецов С.Д.
Хэлворсон М., Янг Дж. Эффективная работа: Microsoft Office System.
Моисеенко СИ., Соболь Б.В. Разработка приложений в MS Access. Краткое.
Ганделрой М., Харкиннз С.С. Автоматизация Microsoft Access с помощью VBA. М.: Вильямc, 2006.
Малыхина М.П. Базы данных: основы, проектирование, использование. Спб.: BHV, 2006.- 45c.
СПИСОК ИЛЛЮСТРАЦИ
Рис. 1 13
Рис. 2 13
Рис. 3 17
Рис. 4 23
Рис. 5 23
