Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.18;
Скачать: CL | DM;

Вниз

Не выполняется запрос!   Найти похожие ветки 

 
paule ©   (2005-06-08 15:07) [0]

Уважаемые подскажите пожалуйста.
Нужен большой запрос. Выполняю его с помощью ADOQuery.
 ...
 ADOQuery.SQL.Clear;
 ADOQuery.SQL.Add("select t.*,w.x,td.* from temp t inner join whatisx w on w.os=t.oes and w.st=t.st and w.tipst=t.tipst
inner join techdata td on td.tipst=t.tipst");
 ADOQuery.Open;
...


Но выполняться не хочет.Пишет следующую ошибку:

"Ошибка синтаксиса(пропущен символ) в выражении запроса"

Однако стоит сократить запрос до такого:
ADOQuery.SQL.Add("select t.*,w.x from temp t inner join whatisx w on w.os=t.oes and w.st=t.st and w.tipst=t.tipst");

и работает всё прекрасно!

Скажите пожалуйста отчего возникает ошибка.База dBASE 4.


 
P.N.P. ©   (2005-06-08 15:19) [1]

Это разве большой запрос? :)
Попробуй так:

 ADOQuery.SQL.Add("select t.*,w.x,td.* from temp t inner join whatisx w on w.os=t.oes and w.st=t.st and w.tipst=t.tipst");
 ADOQuery.SQL.Add("inner join techdata td on td.tipst=t.tipst");


 
sniknik ©   (2005-06-08 15:22) [2]

проблема не в размере запроса а в синтаксисе (в ошибке явно указано). второй джойн написан не по правилам.


 
paule ©   (2005-06-08 15:28) [3]

P.N.P. , так тоже не работет, я пробовал

sniknik, запрос написан правильно. Только может просто сама dBase такую конструкцию не поддерживает. Тогда ктонить подскажите как правильно?


 
sniknik ©   (2005-06-08 15:39) [4]

от движка к движку(/SQL server-у) правила весьма сильно изменяются...
и без этого тайного знания (движок (???)) любые подсказки будут "пальцем в небо".


 
sniknik ©   (2005-06-08 15:46) [5]

select t.*,w.x,td.* from (temp t inner join whatisx w on w.os=t.oes and w.st=t.st and w.tipst=t.tipst) inner join techdata td on td.tipst=t.tipst

возможно


 
Silver Alex ©   (2005-06-08 17:03) [6]

можно еще вот так, вроде тоже самое

select  t.*,w.x,td.* from temp t , whatisx w, techdata td
where
 w.os=t.oes
 and w.st=t.st
 and w.tipst=t.tipst
 and td.tipst=t.tipst


 
paule ©   (2005-06-08 17:21) [7]

Silver Alex, спасибо заработало!
Даже не знал что так можно!


 
paule ©   (2005-06-08 17:24) [8]

sniknik, спасибо ваш вариант тоже сработал!



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

Текущий архив: 2005.07.18;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.044 c
1-1119788329
начинающий
2005-06-26 16:18
2005.07.18
Как определить, пуста ли определенная папка?


3-1118057488
makle
2005-06-06 15:31
2005.07.18
Сжать и сохранить базу Access


1-1119785199
Igor_thief
2005-06-26 15:26
2005.07.18
Впорос с одного зарубежного форума (copy open file)


4-1116610718
seregka
2005-05-20 21:38
2005.07.18
Динамическое копирование информации в Richedit


1-1119954359
salexn
2005-06-28 14:25
2005.07.18
Перенос данных из одной ветки реестра в другую.