Соединение компонента TQuery с базой данных
Для случаев работы с локальными и удаленными БД имеются некоторые различия в способе соединения компонента TQuery с базой данных, для которой и будет выполняться SQL-оператор из свойства SQL этого компонента Свойствос property Database: TDatabase; возвращает указатель на компонент TDatabase, выполняющий соединение данного TQuery с базой данных. Если компонент TDatabase явно в приложении не создан (что характерно при работе с локальными БД), на период сеанса автоматически создается временный компонент TDatabase.
Свойство property DatabaseName: TFileName; позволяет указать, с какой БД будет работать компонент TQuery.
При работе с локальными БД в свойстве DatabaseName указывается:
• псевдоним БД, ранее определенный при помощи утилиты BDE Administrator,
• переопределенный псевдоним из свойства DatabaseName явно определенного компонента TDatabase, если он используется;
• путь на диске к конкретному каталогу (если свойство DatabaseName хранит пустое значение, подразумевается, что указан текущий каталог). Если свойство DatabaseName хранит пустое значение (подразумевается путь • текущий каталог) или явно указан путь на диске к вполне конкретному каталогу, БД будут искаться именно там (для случая работы с локальными СУБД).
Например, при запросе "выбрать все записи из таблицы RASHOD" имя таблицы в операторе SELECT можно указать следующим образом:
• если свойство DatabaseName хранит пустое значение (подразумевается путь к текущему каталогу)
SELECT *
FROM "RASHOD.DB"
или, если в установках BDE указано, что в случае отсутствия расширения для файла локальной таблицы по умолчанию берутся таблицы Paradox, просто
SELECT *
FROM RASHOD
• если свойство DaгabaseName хранит пустое значение (подразумевается путь к конкретному каталогу), этот каталог можно указать в составе имени файла ТБД:
SELECT *
FROM "С:\BOOK\LOC_SKLD\RASHOD.DB"
где "C:\BOOK\LOC_SKLD" указывает конкретный каталог, в котором следует искать файл "RASHOD.DB";
если свойство DaгabaseName хранит псевдоним БД, переустановленный псевдоним БД или путь к конкретному каталогу
SELECT *
FROM RASHOD
При работе с удаленными БД
(архитектура "клиент-сервер") в свойстве DatabaseNawe указывается:• псевдоним БД, ранее определенный при помощи BDE Administrator;
• переопределенный псевдоним из свойства DatabaseName явно определенного компонента TDatabase, если он используется.