Выбор информации из базы данных
Запрос может быть сформирован и записан в свойство SQL во время разработки формы или во время работы программы.
Для записи запроса в свойство SQL во время разработки формы используется редактор списка строк (рис. 17.18), окно которого открывается в результате щелчка на кнопке с тремя точками в строке свойства SQL окна Object Inspector.
Рис. 17.18. Пример запроса к базе данных "Школа"
Свойство SQL представляет собой список строк. Поэтому чтобы сформировать запрос во время работы программы, нужно, используя метод Add, добавить строки (SQL-инструкции) в список SQL.
Ниже приведен фрагмент кода, который формирует запрос на поиск информации о конкретном человеке (критерий выбора – содержимое поля Fam должно совпадать со значением переменной fam).
with forml.Queryl do begin Close; // закрыть файл – результат выполнения // предыдущего запроса SQL.Clear; // удалить текст предыдущего запроса // записываем новый запрос в свойство SQL SQL.Add('SELECT Fam, Name, Class1); SQL.Add('FROM ":Школа:school.db"'); SQL.Add('WHERE'); SQL.Add('(Fam = '" + fam + '")'); SQL.Add('ORDER BY Name, Fam'); Open; // активизируем выполнение запроса end;
Следующая программа, ее текст приведен в листинге 17.2, а диалоговое окно – на рис. 17.19, демонстрирует возможность изменения запроса, точнее, критерия запроса, во время работы программы. Программа обеспечивает вывод как всего списка учеников, так и его части. Например, посредством выполнения запроса выводится информация только о конкретном ученике.
Для просмотра базы данных и результата выполнения запроса используется компонент DBGrid1, который через компонент DataSourcel взаимодействует с компонентом Table1 (при просмотре всей базы данных) или с компонентом Query (при просмотре результата выполнения запроса).
Рис. 17.19. Форма приложения База данных Школа