Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > ADOQuery


Автор: Лена 30.11.2006, 18:00
На моем компьютере мое приложение работает нормально. При переносе на другой компьютер не выполняется последняя часть любого SQL запроса ORDER by “имя колонки”.
Связь ADOQuery -> TDatasetProvider -> TClientDataset -> TDatasource грид 
Почему может не выполняться ORDER by компонента ADOQuery при переносе на другой компьютер?
Сделала принудительную кнопку:
Код

void __fastcall TForm1::ButtonDoorsClick(TObject *Sender)
{
 DataModule2->ClientDataSetDoors->Active = false;
 DataModule2->ADOQueryDoors->Active = false;
 DataModule2->ADOQueryDoors->SQL->Clear();
 DataModule2->ADOQueryDoors->SQL->Add("select * from gates order by name");
 DataModule2->ADOQueryDoors->Active = true;
 DataModule2->ClientDataSetDoors->Active = true;
}

На моем компьютере все нормально, а на другом записи не сортируются согласно order by name. С чем это может быть связано?



Автор: Vyacheslav 30.11.2006, 18:06
А подключение идет к одной и той же БД?

Автор: Лена 30.11.2006, 18:23
Цитата(Vyacheslav @  30.11.2006,  18:06 Найти цитируемый пост)
А подключение идет к одной и той же БД? 


Да, конечно. 
Есть удаленный сервер и там база. С моего компьютера все нормально, а с соседнего нет. Установила на этот другой компьютер программу администрирования серверной базы и из нее сделала запрос. Все нормально ORDER BY работает, а из моей программы не хочет. Соединение настроила нормально, при стратре приложения вижу выборку, а сортировки нет. Не понимаю, почему на моем компьютере все нормально.  smile 


Автор: Vyacheslav 30.11.2006, 19:37
Настройки драйвера ?

Автор: Лена 30.11.2006, 20:42
Цитата(Vyacheslav @  30.11.2006,  19:37 Найти цитируемый пост)
Настройки драйвера ? 


Вроде все соподает.  Завтра поробую еще на одном компьюторе.

Автор: Syrex 1.12.2006, 11:03
С какой базой работаешь через ADO?
DataModule2->ClientDataSetDoors->Active = false; - а это зачем?!

Автор: Лена 1.12.2006, 11:38
Цитата(Syrex @  1.12.2006,  11:03 Найти цитируемый пост)
С какой базой работаешь через ADO?


PostgreSQL


Цитата(Syrex @  1.12.2006,  11:03 Найти цитируемый пост)
DataModule2->ClientDataSetDoors->Active = false; - а это зачем?!


Чтобы увидеть обновления в ClientDataSetDoors.

Автор: Лена 1.12.2006, 12:24
На рисунке настройки драйвера на моем компьюторе.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)