А вот процедуры доступа к таблице результатов просто необходимы.
TQuerySql=function(const sql: string):boolean;
TGetRowSql=function(var Result: TData):boolean;
TErrorSql=procedure(var err: Integer; var ErrNm: string);
TXSql=record
_Open: TOpenDBSql; // открываем базу
_Close: TCloseSql; // закрываем
_Query: TQuerySql; // Выполняем запросы. SELECT, UPDATE, DROP TABLE, CREATE TABLE, INSERT,
// DELETE и прочие. не стоит делать процедуры на каждую SQL комманду.
// если произошла ошибка при выполнении запроса то =false
_GetRow: TGetRowSql; // возвращает строку результир. таблицы в виде MT цепочки. Равна false если последняя строка.
// работает по принципу FindNext. Альтернативное имя FetchRow.
_Error: TErrorSql; // возвращает номер и текст ошибки
end;