Читаем Access 2002: Самоучитель полностью

Так как речь идет о базе данных по ЧС, то в ней не предусмотрено накопление и хранение информации о дорожно-транспортных происшествиях – подобные сведения должны содержаться в другом банке данных. Однако по разным причинам в нашу базу данных (в частности, в таблицу ES_OPER) такая информация иногда попадает. Пользы от этого все равно нет, потому что случайные разрозненные записи не дают полной картины по дорожно-транспортным происшествиям. Естественно, такие сведения следует удалять. В бланке запроса в ячейке Условия отбора для поля Код вида ЧС введите код данного типа происшествий – «10101» (рис. 11.47).

Рис. 11.47

Дайте команду на выполнение запроса. На экране появится сообщение о том, что удалению подлежит 556 записей (см. рис. 11.48), и предупреждение, что если вы ответите Да, то назад возврата не будет. Надеемся, что вы исполнены самых серьезных намерений и решительно ответите Да, приведя приговор в исполнение. Таким образом, вы реализуете запрос на удаление, убрав 556 записей, или 6,6 % от общего числа записей в таблице ES_OPER (8397).

Рис. 11.48

<p>Удаление дублирующихся записей</p>

При ведении банка данных довольно часто приходится удалять повторяющиеся записи. Есть два традиционных пути решения этой задачи:

• не допускать дублирования записей непосредственно при вводе информации в базу данных;

• находить и устранять повторяющиеся записи из уже сформированной БД.

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

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

Запрос на поиск повторяющихся записей

Начнем с таблицы ES_OPER. В окне базы данных откройте вкладку Запросы и щелкните по кнопке

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

Рис. 11.49

В первом окне (рис. 11.50) мастер просит определить таблицу или запрос, в котором надо найти повторяющиеся поля. Выберите таблицу ES_OPER и продолжите работу.

Рис. 11.50

В следующем окне (см. рис. 11.51) надо указать повторяющиеся поля. Будем считать, что записи дублируют друг друга, если в них совпадает содержимое трех полей: Дата ЧС, Код объекта, Виды ЧС. Иначе говоря, мы исходим из того, что в один и тот же день на данном объекте не могут произойти две или более однотипные аварии. (Конечно, было бы проще поставить условием совпадение всех полей. Однако даже для записей аналогичного содержания это маловероятно: сообщения об одном и том же событии могут передаваться разными людьми и основываться на разных источниках информации. Отсюда неизбежность расхождений и просто ошибок.) Вы уже знаете, как открыть перечисленные поля в окне мастера запросов, поэтому здесь представлен лишь конечный результат.

Рис. 11.51

После этого мастер откроет следующее окно (см. рис. 11.52), предлагая включить в запрос дополнительные поля. Рекомендуем добавить поле Номер для указания номера записи (чуть позже будет объяснена причина). В следующем окне мастер предложит согласиться с именем нового запроса.

Рис. 11.52

Перейти на страницу:

Похожие книги

Основы программирования в Linux
Основы программирования в Linux

В четвертом издании популярного руководства даны основы программирования в операционной системе Linux. Рассмотрены: использование библиотек C/C++ и стан­дартных средств разработки, организация системных вызовов, файловый ввод/вывод, взаимодействие процессов, программирование средствами командной оболочки, создание графических пользовательских интерфейсов с помощью инструментальных средств GTK+ или Qt, применение сокетов и др. Описана компиляция программ, их компоновка c библиотеками и работа с терминальным вводом/выводом. Даны приемы написания приложений в средах GNOME® и KDE®, хранения данных с использованием СУБД MySQL® и отладки программ. Книга хорошо структурирована, что делает обучение легким и быстрым. Для начинающих Linux-программистов

Нейл Мэтью , Ричард Стоунс , Татьяна Коротяева

ОС и Сети / Программирование / Книги по IT
1001 совет по обустройству компьютера
1001 совет по обустройству компьютера

В книге собраны и обобщены советы по решению различных проблем, которые рано или поздно возникают при эксплуатации как экономичных нетбуков, так и современных настольных моделей. Все приведенные рецепты опробованы на практике и разбиты по темам: аппаратные средства персональных компьютеров, компьютерные сети и подключение к Интернету, установка, настройка и ремонт ОС Windows, работа в Интернете, защита от вирусов. Рассмотрены не только готовые решения внезапно возникающих проблем, но и ответы на многие вопросы, которые возникают еще до покупки компьютера. Приведен необходимый минимум технических сведений, позволяющий принять осознанное решение.Компакт-диск прилагается только к печатному изданию книги.

Юрий Всеволодович Ревич

Программирование, программы, базы данных / Интернет / Компьютерное «железо» / ОС и Сети / Программное обеспечение / Книги по IT
Access 2002: Самоучитель
Access 2002: Самоучитель

В книге рассматривается широкий круг вопросов, связанных с использованием программной среды Access 2002, которая является составной частью пакета Office 2002 и предназначена для создания банка данных в самых различных предметных областях.Подробно описывается методика проектирования объектов базы данных (таблицы, формы, отчеты, страницы доступа к данным, запросы, модули).Детально обсуждаются вопросы создания интегрированной базы данных в единой среде Access 2002: формирование БД с нуля, конвертирование в программную среду баз данных, созданных в ином программном окружении – Clarion, FoxPro.Особое внимание уделяется формированию разнообразных запросов к интегрированной базе данных Access 2002 с использованием языков программирования SQL, VBA и макросов.Приводятся общие сведения о возможностях языка обмена данными между различными компьютерами и приложениями (XML). Описываются возможности использования гиперссылок, связывающих базу данных с другими программными продуктами. Объясняется, как можно работать с базой данных Access 2002 без установки ее на компьютер, используя технологию ODBC (Open Data Base Connectivity). В приложениях приводятся количественные параметры Access 2002 и связанная с этой СУБД терминология.Предлагаемая книга будет полезна специалистам, занимающимся практической разработкой банков данных и приложений на их основе, а также студентам вузов, изучающим информатику.

Павел Юрьевич Дубнов

Программирование, программы, базы данных / ОС и Сети / Книги по IT