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

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

Проблема с запросом [D6, dBase, FoxPro]


rvs ©   (2004-06-01 15:55:00) 

Уважаемые господа !
Не работает запрос описанный ниже. Причем 2 года до этого работал
без вопросов.
Вылетает ошибка :Access violation at address 00000007. Read of address FFFFFFFF

Был бы оччень признателен.

with query1 do
begin
 Close;
 SQL.Clear;
 SQL.Add('Select a.d7a1,"'+vid+'" as vids,'+IntToStr(j)+' as nvid,b.gur2,sum(a.d7aau) as aupst');
 SQL.Add(',sum(a.d7aag) as agpst,sum(a.d7apt) as ptpst');
 SQL.Add(',sum(a.d7apd) as pdpst,sum(a.d7arh) as rhpst');
 SQL.Add(',sum(a.d7air) as irpst,sum(a.d7aru) as rupst');
 SQL.Add(',sum(a.d7aos) as ospst,sum(a.d7are) as repst');
 SQL.Add(',d.d73,d.d795,d.d710,c.iau_dov,c.iag_dov,c.ipt_dov,c.ipd_dov');
 SQL.Add(',c.irh_dov,c.iir_dov,c.iru_dov,c.ios_dov,c.ire_dov, " " as pole1 ');
 SQL.Add('from "'+mains.put+'d7a" as a ');
 SQL.Add('Left Join "'+mains.put+'d7" as d on d.d71=a.d7a1 ');
 SQL.Add('Left Join "'+mains.put+'d7_ras" as c on c.d71=a.d7a1 ');
 SQL.Add('Left Join "gurx" as b on b.gur1=a.d7a10 and b.num=a.d7a9 ');
 SQL.Add('where b.gur1 is not null ');
 SQL.Add('group by a.d7a1,b.gur2,d.d73,d.d795,d.d710,c.iau_dov,c.iag_dov');
 SQL.Add(',c.ipt_dov,c.ipd_dov,c.irh_dov,c.iir_dov,c.iru_dov,c.ios_dov,c.ire_dov ');
 SQL.Add('union ');
 SQL.Add('Select a.d71 as d7a1,"'+vid+'" as vids,'+IntToStr(j)+' as nvid,"01.01.2002" as gur2, 0 as aupst ');
 SQL.Add(',0 as agpst,0 as ptpst,0 as pdpst,0 as rhpst,0 as irpst,0 as rupst,0 as ospst,0 as repst');
 SQL.Add(',a.d73,a.d795,a.d710,b.iau_dov,b.iag_dov,b.ipt_dov,b.ipd_dov');
 SQL.Add(',b.irh_dov,b.iir_dov,b.iru_dov,b.ios_dov,b.ire_dov, " " as pole1 ');
 SQL.Add('from "'+mains.put+'d7" as a ');
 SQL.Add('Left join "'+mains.put+'d7_ras" as b on a.d71=b.d71');
 SQL.Add('where a.d7202>0 and a.d7208<>"" and a.d74 between "'+d_1.text+'" and "'+d_2.text+'"');
 SQL.Add(' order by nvid ');
 Open;
 //прогресс
 spr.Progress:=spr.Progress+1;
end; //Query1


Соловьев   (2004-06-01 17:09:00) [1]

LocalSQL.hlp - Table names
надо расширение указать файлов, потому как наверное по умолчанию *.db , а у тебя *.dbf


rvs   (2004-06-01 17:03:00) [2]

Access violation at address 00000007. Read of address FFFFFFFF

Из-за таблиц может быть такая беда ?


Соловьев   (2004-06-01 17:00:00) [3]


> [8] rvs   (01.06.04 16:57)

работает в SQL Exploer?


rvs   (2004-06-01 16:57:00) [4]

Ошибка та же:

Select a.d7a1,"Серебро  " as vids,2 as nvid,b.gur2,sum(a.d7aau) as aupst,sum(a.d7aag) as agpst,
sum(a.d7apt) as ptpst,sum(a.d7apd) as pdpst,sum(a.d7arh) as rhpst,sum(a.d7air) as irpst,
sum(a.d7aru) as rupst,sum(a.d7aos) as ospst,sum(a.d7are) as repst,d.d73,d.d795,d.d710,
c.iau_dov,c.iag_dov,c.ipt_dov,c.ipd_dov,c.irh_dov,c.iir_dov,c.iru_dov,c.ios_dov,c.ire_dov,
" " as pole1
from "c:\p4\ag\d7a" as a
Left Join "c:\p4\ag\d7" as d on d.d71=a.d7a1
Left Join "c:\p4\ag\d7_ras" as c on c.d71=a.d7a1
Left Join "c:\delphi\olmeh\gurx" as b on b.gur1=a.d7a10 and b.num=a.d7a9
where b.gur1 is not null
group by a.d7a1,b.gur2,d.d73,d.d795,d.d710,c.iau_dov,c.iag_dov,c.ipt_dov,c.ipd_dov,
c.irh_dov,c.iir_dov,c.iru_dov,c.ios_dov,c.ire_dov


Соловьев   (2004-06-01 16:25:00) [5]


> Да нет в том и дело , что все объекты созданы.

F5, F7 и F8 - известны?
Ставишь брекпойнт на строке Open; Смотришь что в SQL и если все ок(можешь даже в буфер скопировать чтобы SQL Exploer проверить), жмешь F8 - смотришь та ли выдает ошибку...


Vlad   (2004-06-01 16:20:00) [6]


> Курдль ©   (01.06.04 16:17) [4]

Что-то я еще не разу не видел, чтобы SQL запрос вызывал нарушение доступа к памяти... Говорят же, не в запросе дело.


rvs   (2004-06-01 16:19:00) [7]

Да нет в том и дело , что все объекты созданы.

Причем на архивированных таблицах от 27.05.04.
Это безобразие работает.(d7a=14000 записей)


Курдль   (2004-06-01 16:17:00) [8]

Сразу стандартный вопрос: а из какого-нить DBExplorer-а этот запрос сработал? Не пробовали? Но хотите, чтобы Вам сразу тут отыскали ошибку?


Anatoly Podgoretsky   (2004-06-01 16:11:00) [9]

Нет кода создания объектов используемых здесь, один из них не создан.


Johnmen   (2004-06-01 15:58:00) [10]

Проблема не в запросе.
Эта ошибка к нему не относится...


Соловьев   (2004-06-01 15:56:00) [11]

Какой ужас...Про параметры слышал?


Наверх

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