Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблема выполнения сложного запроса в IBase


Страницы:   1 2

Maloy ©   (2002-05-06 12:00:00) 

Всем привет.
Сталкнулся с такой проблемой:
при выполнении сложного запроса возникает ошибка "Capability not supported" (пер. Совместимость не поддерживается)

Запрос выполняется при помощи TQuery.
Причем если выполнять запрос IBase Windows ISQL то запрос выполняется.

Для примера запрос следущего содержания:
Select * from Table1 I
where
I.ID IN (Select K.ID from Table2 K where K.TITLE LIKE "%_строка_%")

В чем может быть проблема?


Anatoly Podgoretsky   (2002-05-06 15:16:00) [1]

Reindeer Moss Eater (06.05.02 15:08)
Спасибо, а то у меня было подозрение, что они под 5.2 поставляют 5.1
Собаки апгрейд прячут до сих пор


Reindeer Moss Eater   (2002-05-06 15:08:00) [2]

>Anatoly Podgoretsky ©
idapi32.dll Версия 5.2.0.2 Дата 10.05.2001


Reindeer Moss Eater   (2002-05-06 15:01:00) [3]

>Desdechado
Если запросить RequestLive (как у автора) то BDE скажет то что оно сказало.
BDE 5.2 выпустили вместе с D6


Anatoly Podgoretsky   (2002-05-06 15:01:00) [4]

Reindeer Moss Eater (06.05.02 14:49)
Какая дата/время у файла idapi32.dll


Desdechado   (2002-05-06 14:57:00) [5]

2 Reindeer Moss Eater (06.05.02 14:49)
> У меня БДЕ 5.2
Когда его выпустили?


Desdechado   (2002-05-06 14:54:00) [6]

1. результат не всегда будет Live, даже если поставить RequestLive.
2. RequestLive лучше грамотно заменить на CachedUpdates + UpdateSQL. Гораздо гибче и меньше мороки.


Alexandr   (2002-05-06 14:52:00) [7]

да. RequestLive не будет. Это точно...


Reindeer Moss Eater   (2002-05-06 14:49:00) [8]

>Desdechado
У меня БДЕ 5.2, но и оно не поддерживает RequestLive для запроса что привел автор


Desdechado   (2002-05-06 14:46:00) [9]

2 Reindeer Moss Eater (06.05.02 14:39)
Чего вдруг?


Reindeer Moss Eater   (2002-05-06 14:39:00) [10]

... И получишь всё ту же "Capability not supported"


Desdechado   (2002-05-06 14:32:00) [11]

1. обнови с борланда БДЕ до 5.11
2. SELECT T1.* FROM Table1 T1, Table1 T2 WHERE T1.ID=T2.ID2 and T2.title=...
3. в алиасе поставь лучше SQL query mode=SERVER


Johnmen   (2002-05-06 12:51:00) [12]

>Maloy (06.05.02 12:41) : Согласен !
1. Чем не устраивает JOIN ?
2. >>Убери RequestLive не могу<<<
Тогда уж надо кешировать и иметь UpdateSQL...


Maloy   (2002-05-06 12:41:00) [13]

Убери RequestLive не могу, нужно очень
BDE нужен

Select * from Table1
where (ID=ID_2) and (TITLE LIKE "%_строка_%")

не сработает однозначно:
-------------------------
ID | ID_2 | TITLE |
-------------------------\
1 0 тра-та-та
2 1 тра-та-та2
3 1 тра-та-та3
и где здесь ID=ID2?


Reindeer Moss Eater   (2002-05-06 12:34:00) [14]

Убери RequestLive


Johnmen   (2002-05-06 12:32:00) [15]

Select * from Table1
where (ID=ID_2) and (TITLE LIKE "%_строка_%")


Alexandr   (2002-05-06 12:27:00) [16]

и все-таки.

1) не намудрил-ли ты чего в Tquery, о чем умалчиваешь?
2) Тебе BDE сильно надо?
3) Запрос переделай.


Maloy   (2002-05-06 12:20:00) [17]

BDE v.5.01;
IB 5;


Alexandr   (2002-05-06 12:18:00) [18]

ну так, какая разница - объедини таблицу саму с собой.


Maloy   (2002-05-06 12:16:00) [19]

Не ребята, на самом деле запрос такой:

Select * from Table1I
where
I.ID_2 IN (Select K.ID from Table1K where K.TITLE LIKE "%_строка_%")

А таблица следующая:
-------------------------
ID | ID_2 | TITLE |
-------------------------\

т.е. некоторые поля в таблице связанны с другими в этой же таблице, и я ищу их по названию TITLE


Johnmen   (2002-05-06 12:14:00) [20]

Неоптимальный !


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо