СообЧа > База Знаний > Базы данных > MS Access

Вопрос

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

Ответ

Обычно это делается через фильтры или SQL запросы, что суть одно и тоже.

В этом случае Вам нужно создать форму(или поля), где вы будете задавать критерии для будущего фильтра (запроса). Причем можно использовать маски ("ул. Ленин*" и т.д.) Далее по имеющимся значением полей фильтруем нужную форму, или открываем эту форму на запросе примерно такого вида:

SELECT Таблица.улица, Таблица.дом, Таблица.район

FROM Таблица

WHERE ((([Таблица].[улица]) Like [forms]![УсловияОтбора].[улица]) AND

(([Таблица].[дом]) Like [forms]![УсловияОтбора].[дом]));

В нужной форме остануться только отфильтрованные записи. Фильтр работает во много раз быстрее чем стандартный поиск. Особенно при большом количестве записей. (У меня в таблице ~250000 записей. Стандартным поиском пользоваться невозможно)

Из конференции Expert_FAQ



Copyright © 2000-2004 Сообщество Чайников
Контактная информация