Вниз
Скачать: CL | DM;

Не удается выполнить запрос с подзапросом   Найти похожие ветки 

 
bmp2006 ©   (2006-08-30 19:50) [0]

Подскажите пожалуйста что не так я делаю? Выполняю в C Builder"e

Так работает:

 Query1->Close();
 Query1->SQL->Clear();
 Query1->SQL->Add("delete from 1.DB where cnum = 1");
 Query1->ExecSQL();


так уже нет:

 Query1->Close();
 Query1->SQL->Clear();
 Query1->SQL->Add("delete from 1.DB where cnum IN (select cnum from   2.DB where account = 12)");
 Query1->ExecSQL();


 
SergP.   (2006-08-30 19:58) [1]

СУБД указывать нада... А то вдруг ты мускул старый юзаешь, а они не поддерживают вложенных запросов...


 
bmp2006 ©   (2006-08-30 20:09) [2]

Работаю в C Builder"e через BDE. Таблицы Paradox.


 
Anatoly Podgoretsky ©   (2006-08-30 20:19) [3]

БДЕ (LocalSQL) не поддерживает вложеные запросы


 
bmp2006 ©   (2006-08-30 20:25) [4]

:( а что делать? как то надо же выкручиваться... :)


 
Anatoly Podgoretsky ©   (2006-08-30 20:38) [5]

Делай два независимых запроса или переходи на другую технологию и долой с Парадокса и как можно быстрее.


 
Виталий Панасенко   (2006-08-30 21:30) [6]


> Anatoly Podgoretsky ©   (30.08.06 20:19) [3]
> БДЕ (LocalSQL) не поддерживает вложеные запросы

Я, конечно, извиняюсь, но это несколько не соответствует истине...


 
Виталий Панасенко   (2006-08-30 21:33) [7]

delete from maindocr where owner_code not in (select owner_code from owner)
у меня  это работает "на ура" под тем же приколистом парадоксом(что приколист, согласен.:-) )))


 
Виталий Панасенко   (2006-08-30 21:37) [8]

delete from maindocr where owner_code not in (select owner_code from owner)
у меня  это работает "на ура" под тем же приколистом парадоксом(что приколист, согласен.:-) )))


 
Виталий Панасенко   (2006-08-30 21:37) [9]

Провайдер - тоже приколист..:-))


 
Anatoly Podgoretsky ©   (2006-08-30 23:35) [10]

SELECT subqueries can be used in SELECT statements, but are limited to the WHERE and HAVING clauses. They cannot be used in the SELECT, FROM, GROUP BY, or ORDER BY clauses of a SELECT statement.


 
Anatoly Podgoretsky ©   (2006-08-30 23:37) [11]

То есть для случая WHERE можно


 
bmp2006 ©   (2006-08-31 12:24) [12]

Вот так заработало:

Query1->SQL->Add("delete from "1.DB" where cnum IN (select cnum from   "2.DB "where account = 12)");



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.026 c
2-1160719741
Alex_C
2006-10-13 10:09
2006.10.29
Почему мерцает TMemo


2-1160467962
Монг
2006-10-10 12:12
2006.10.29
Как узнать из какой формы вызвана форма ?


15-1160137869
oldman
2006-10-06 16:31
2006.10.29
Нехватка виртуальной памяти...


1-1158764711
Alvin
2006-09-20 19:05
2006.10.29
Бесплатный Хостинг с поддержкой CGI на Delphi


2-1160769352
Plm
2006-10-13 23:55
2006.10.29
Подключение к базе Microsoft Access




   Наверх