Методы открытия и закрытия компонента TQuery
Компонент TQuery может возвращать НД (если компонент использует оператор SELECT, то есть осуществляет выборку из одной или более таблиц БД) и выполнять действие над одной или более таблицей БД (SQL-операторы INSERT, UPDATE, DELETE).
В случае использования оператора SELECT после открытия компонента TQuery возвращается НД, в котором указатель текущей записи всегда установлен на первую запись (если она имеется). Такой компонент TQuery следует открывать:
• установкой свойства Active в значение True, или
• выполнением метода
procedure Open;
Например,
RashodQuery.Active := True;
TovaryQuery.Open;
В случае использования операторов INSERT, UPDATE, DELETE набор данных не возвращается. Такой компонент TQuery следует открывать, выполняя метод
procedure ExecSQL;
Например,
InsertQuery.ExecSQL;
Метод ExecSQL посылает серверу для выполнения SQL-оператор из свойства SQL данного компонента TQuery.
Закрытие компонента TQuery осуществляется методом procedure Close; или установкой в False свойства Active, например:
RashodQuery.Active := False;
TovaryQuery.Open;
При этом следует помнить, что для компонента TQuery, не возвращающего набор данных, выполнение метода Close не имеет последствий, поскольку с данным компонентом не связан открытый НД. Для динамических запросов, особенно для отсылаемых к удаленной БД, полезно использовать методы, осуществляющие "связывание" параметров с их фактическими значениями (Prepare) и отменяюще такое "связывание" (UnPrepare) Более подробно о них будет рассказано далее в подразделах, посвященных выполнению динамических запросов.