Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.07.18;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.035 c
1-1120394991
Толян
2005-07-03 16:49
2005.07.18
Загрузка кода изи MEMO


9-1112792754
anat
2005-04-06 17:05
2005.07.18
OpenGL нужна помощь


1-1119952704
SergZ
2005-06-28 13:58
2005.07.18
DevExpress


14-1119507619
MacroDenS
2005-06-23 10:20
2005.07.18
Dura lex, sed lex - Закон суров, но закон!


1-1120032563
mefres
2005-06-29 12:09
2005.07.18
перевод числовых денег в строковые





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский