![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
не отрабатывается запрос в TQuery [D6, dBase, FoxPro]
Nikkkkk © (2003-08-20 15:10:00)
!!!Уважаемые мастера!!!
У меня вот какая проблема. Необходимо сделать выборку из двух таблиц. Пример запроса:
select ttprod."nomttn",ttnakl."nomrec" from ttnakl,ttprod
where ttprod."nomttn"=ttnakl."nomrec"
В результате выполнения запроса не найдено ни одной записи,
хотя когда пишу этот же код в DB Explorer, все ищется и работает. Почему так ???
Заранее спасибо.
Nikkkkk (2003-08-20 16:16:00) [1]
!!! СПАСИБО ВСЕМ ОГРОМНЕЙШЕЕ !!! РАБОТАЕТ !!!
Johnmen (2003-08-20 16:08:00) [2]
Возьми даты в одиночные кавычки, а имена полей оставь без них...
Соловьев (2003-08-20 16:06:00) [3]
select ttprod."nomttn",ttnakl."nomrec" from ttnakl,ttprod
where ttprod."nomttn"=ttnakl."nomrec" and ttnakl."datotg" between cast("01.07.03" as date) and cast("30.07.03" as date)
Nikkkkk (2003-08-20 16:00:00) [4]
почему в DBExlorer работает а в программе нет ???
Nikkkkk (2003-08-20 15:53:00) [5]
в TQuery.SQL-пишу:
select ttprod."nomttn",ttnakl."nomrec" from ttnakl,ttprod
where ttprod."nomttn"=ttnakl."nomrec" and ttnakl."datotg">"01.07.03" and ttnakl."datotg"<"30.07.03"
затем:
procedure TForm1.FormActivate(Sender: TObject);
begin
query1.open;
end;
Вот собственно и весь код.
Johnmen (2003-08-20 15:50:00) [6]
Ещё раз. Если ожидаешь реальной помощи, приводи код ! Целиком !
Nikkkkk (2003-08-20 15:47:00) [7]
> Соловьев © (20.08.03 15:42) [10]
> >отрабатывает безрезультатно
> а как ты это проверяешь?
Вижу в DBgrid-e
Жук (2003-08-20 15:44:00) [8]
Nikkkkk = Nik5 ~ Nik8 :-)))
ЗЫ. Сорри за оффтоп.
Соловьев (2003-08-20 15:42:00) [9]
>отрабатывает безрезультатно
а как ты это проверяешь?
Nikkkkk (2003-08-20 15:40:00) [10]
select ttprod."nomttn",ttnakl."nomrec" from ttnakl,ttprod
where ttprod."nomttn"=ttnakl."nomrec" and ttnakl."datotg">"01.07.03" and ttnakl."datotg"<"30.07.03"
Вышеописанное прописываю при создании компонента TQuery (вручную). А далее по событию формы OnActivate делаю TQuery1.open;
Вот собственно и все, без всяких заморочек.
Johnmen (2003-08-20 15:36:00) [11]
Приводи код, формирующий и выполняющий указанный запрос...
Nikkkkk (2003-08-20 15:35:00) [12]
> Соловьев © (20.08.03 15:31) [6]
> А так?
>
> select t2."nomttn", t1."nomrec"
> from ttnakl t1
> left join ttprod t2 on t1."nomrec" = t2."nomttn"
отрабатывает безрезультатно, хотя ошибки уже не выдает...
Соловьев (2003-08-20 15:31:00) [13]
А так?
select t2."nomttn", t1."nomrec"
from ttnakl t1
left join ttprod t2 on t1."nomrec" = t2."nomttn"
Nikkkkk (2003-08-20 15:28:00) [14]
После отработки, и закрытия приложения выдает ошибку:
Runtim error 216 at 004036AE
Desdechado (2003-08-20 15:25:00) [15]
try-except блок есть? может, подавляешь исключение, в котором оно тебе говорит, что не найдена таблица?
Nikkkkk (2003-08-20 15:21:00) [16]
> Desdechado © (20.08.03 15:18) [2]
> делаешь qry.Open или qry.ExecSQL
> ExecSQL не возвращает набора данных
я стественно делаю Query1.open, но картина не меняется.
Desdechado (2003-08-20 15:18:00) [17]
делаешь qry.Open или qry.ExecSQL
ExecSQL не возвращает набора данных
Nikkkkk (2003-08-20 15:11:00) [18]
использую тип таблиц FoxPRO(другие использовать нельзя.)