Поиск:

Ответ в темуСоздание новой темы Создание опроса
> console application + AdsQuery = проблема, не работает запрос 
:(
    Опции темы
T1000
Дата 13.2.2007, 19:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 18.1.2007

Репутация: нет
Всего: нет



Здравствуйте, уважаемые. Возникла проблема, решить которую у меня опыта не хватает.
Задача: необходимо реализовать консольное приложение, которое выполняет SQL запросы к базе dbf  с помощью  компоненты Advantage Database Server.

Пишу следующий код (writeln-ы для контроля отработки каждой строчки smile )  

Код

...
    AdsConnection1:=TAdsConnection.Create(nil);
    AdsConnection1.AdsServerTypes:=[stADS_LOCAL];
writeln('.. type ads server');
    AdsConnection1.ConnectPath:='d:\11\'    //папка с базами
writeln('.. connectpath ');
    AdsConnection1.LoginPromt:=false;
writeln('.. login promt');
    AdsConnection1.IsConnected:=true;
writeln('.. is connected');

    AQ:=TAdsQuery.Create(nil);
    AQ.Active:=false;
    AQ.DataBaseName:='AdsConnection1';
    AQ.SourceTableType:=ttAdsCDX;
    AQ.SQL.Clear;
    AQ.SQL.Add('select * from detal');    // detal - название таблицы
writeln('.. sql add');
    AQ.ExecSQL;
writeln('.. exec sql');
...


Проблема:
в результате выполнения программы последняя надпись в консольке  ".. sql add", далее выскакивает ошибка .. Error 7200 .. Either ACE could not find the specified file, or you do not have sufficient rights to access the file. Table name: detal 
Уважаемые, какие есть у вас мысли на этот счет? в чем может быть причина?

Примечание:
файл detal.dbf с индексным файлом (.cdx) лежат в вышеописанной папочке. Пробовал AdsTable, работает, но только на чтение.
Если создать обычое визуальное приложение, добавить на него компоненты AdsConnection AdsQuery и выставить такие свойства, то работает без проблем. 
PM MAIL   Вверх
T1000
Дата 14.2.2007, 22:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 18.1.2007

Репутация: нет
Всего: нет



Проблему решил, если кому интересно, то скажу. Решил следующими строками:

Код

AdsConnection1.name:='ADS';

AQ.databasename:=AdsConnection1.name;

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0451 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.