Классика баз данных - статьи

       

Запрос с параметром


Для построения разнообразных выборок из таблиц, придется освоить параметризированные запросы. Предположим, следует найти все фирмы, которые расположены в Севастополе. Для этого нужно будет построить простенький запрос (используйте New Query(Design View), если нет желания возиться с SQL-синтаксисом).

Рис. 13. Параметр запроса обозначается в поле Criterion двоеточием


Обратите внимание на рис. 13. Это подсказка по созданию запроса. В поле Criterion вписывается критерий выборки. Если критерий параметризованный (то есть такой, что будет определяться во время выполнения), то его имя должно начинаться с двоеточия. В виде SQL-команды он выглядит следующим образом:

SELECT `Name`, `City`, `Address`, `Tel`, `Fax` FROM `myoffdb`.`firms` `firms` WHERE ( ( `City` = :x ) )

Теперь выполните запрос — появится диалоговое окно с просьбой определить параметр "x" (рис. 14).

Рис. 14. Укажите город, по которому следует провести выборку

Вообще, такой вид отбора нужных данных не слишком практичен — но он демонстрирует механизм работы с параметрами и пригодится при отладке. Главное, что данный вид запроса можно встроить в форму документа, а параметр задавать более удобными для человека способами. Давайте отработаем этот прием.

Возьмем документ, в который мы встроили таблицу persons, и несколько дополним его. А именно: сделаем так, чтобы при выборе определенного сотрудника сразу отображалась его рабочая информация. Для этого нужно создать форму, подчиненную главной.

Для управления формами документа, если их несколько, предусмотрено специальное средство — Form Navigator, он вызывается из панели функций. Вызовите контекстное меню и создайте новую форму (как это показано на рис. 15).

Рис. 15. Подчиненные формы нужны для обработки запросов с параметрами

Пока это всего лишь оболочка — в ней нет ни одного отображаемого объекта. Впрочем, ими мы займемся позже. Роль подчиненной формы лучше всего продемонстрировать наглядно (см. рис. 16).

Рис. 16. Соотношение между источником данных и документом определяется в свойствах подчиненной формы



Содержание  Назад  Вперед