powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ADO + Oracle + многократный парсинг
25 сообщений из 66, страница 1 из 3
ADO + Oracle + многократный парсинг
    #35034140
KoTTT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть несколько приложений на Delphi, которые цепляются к ораклу через ADO.
У этого ADO помимо прочего, есть очень неприятная привычка много раз парсить запросы к базе.
Например:
Из приложения делается запрос вида
Код: plaintext
select field from table where...
В трассировке оракла ясно видим 2 разбора (parse calls) подряд. После второго уже идут exec и fetch.

Дальше. Если запрос к нескольким таблицам
Код: plaintext
select ... from table1, table2, table3 where...
там веселее: разбор самого запроса + разборы запросов
Код: plaintext
1.
2.
select * from table1;
select * from table2;
select * from table3;
и наконец exec и fetch.

Если DML
Код: plaintext
insert into table1 ...
то имеем 3(!) разбора этого оператора.
Погуглил и нашел одинокий вопрос на форуме MS от 2001 года. Понятное дело - без ответов...
Кто-нибудь боролся с таким идиотским поведением ADO?
Я не разработчик, но они здесь рядом и самостоятельно пока не могут решить эту проблему. А меня, как DBA, такое кол-во "холостых" парсов в базе не устраивает.
Хорошо хоть автокоммиты уже увидели и отключили, так же как и втыкание куда попало ROWID.
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034157
Фотография Dmitry Arefiev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если вы планируете работать только с Oracle (хотя да же если и не только), то бегом от ADO.
Есть AnyDAC, ODAC, DOA - вот их и используйте. Почему - попробуйте, сами поймете через
5 минут :)
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034163
KoTTT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не разработчик.
Но ситуация такая, что софт большой, написан под ADO. Переписывать целиком под что-то другое - нереально. Задача как-то "уговорить" ADO "вести себя прилично".
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034167
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KoTTTДальше. Если запрос к нескольким таблицам
Код: plaintext
select ... from table1, table2, table3 where...
там веселее: разбор самого запроса + разборы запросов
Код: plaintext
1.
2.
select * from table1;
select * from table2;
select * from table3;
и наконец exec и fetch.А всё действительно так страшно? Последние три запроса выполняются каждый раз перед "select ... from table1, table2, table3 where..." или только первый раз?
Кстати, там есть обращения к USER_SOURCE / ALL_SOURCE?
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034173
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
т.е. не к andreymxКстати, там есть обращения к USER_SOURCE / ALL_SOURCE?, а к ***_tables/**_tab_columns и т.д.?
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034176
KoTTT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andreymx KoTTTДальше. Если запрос к нескольким таблицам
Код: plaintext
select ... from table1, table2, table3 where...
там веселее: разбор самого запроса + разборы запросов
Код: plaintext
1.
2.
select * from table1;
select * from table2;
select * from table3;
и наконец exec и fetch.А всё действительно так страшно? Последние три запроса выполняются каждый раз перед "select ... from table1, table2, table3 where..." или только первый раз?
Кстати, там есть обращения к USER_SOURCE / ALL_SOURCE?
Каждый раз. Но они не выполняются, они только разбираются (parse call) .
К USER_SOURCE / ALL_SOURCE обращений нет. Да и откуда им тут взяться? Хотя... Этот ADO и так чудеса творит...
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034177
KoTTT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andreymxт.е. не к andreymxКстати, там есть обращения к USER_SOURCE / ALL_SOURCE?, а к ***_tables/**_tab_columns и т.д.?
И этого нет.
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034207
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чудак человек. дай ка трассу запосов, а то по твоему описанию хрен поймешь

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034239
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
скорее всего трассу перепутал :)
______________________________________________
Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде!
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034292
KoTTT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ScareCrowчудак человек. дай ка трассу запосов, а то по твоему описанию хрен поймешь
Чего тут непонятного? Трасса такого вида:
1 вариант. Простой селект
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
PARSING  IN  CURSOR # 1  len= 31  dep= 0  uid= 24  oct= 3  lid= 24  tim= 10424795808230  hv= 2866028057  ad='b5a40c50'
select sysdate  as  t from dual 
 END   OF  STMT
PARSE # 1 :c= 0 ,e= 154 ,p= 0 ,cr= 0 ,cu= 0 ,mis= 0 ,r= 0 ,dep= 0 ,og= 3 ,tim= 10424795806856 
WAIT # 1 : nam='SQL*Net message to client' ela=  3  p1= 1413697536  p2= 1  p3= 0 
WAIT # 1 : nam='SQL*Net message from client' ela=  242  p1= 1413697536  p2= 1  p3= 0 
WAIT # 1 : nam='SQL*Net message to client' ela=  1  p1= 1413697536  p2= 1  p3= 0 
WAIT # 1 : nam='SQL*Net message from client' ela=  394  p1= 1413697536  p2= 1  p3= 0 
=====================
PARSING  IN  CURSOR # 1  len= 31  dep= 0  uid= 24  oct= 3  lid= 24  tim= 10424795809526  hv= 2866028057  ad='b5a40c50'
select sysdate  as  t from dual 
 END   OF  STMT
PARSE # 1 :c= 0 ,e= 81 ,p= 0 ,cr= 0 ,cu= 0 ,mis= 0 ,r= 0 ,dep= 0 ,og= 3 ,tim= 10424795809519 
WAIT # 1 : nam='SQL*Net message to client' ela=  2  p1= 1413697536  p2= 1  p3= 0 
WAIT # 1 : nam='SQL*Net message from client' ela=  200  p1= 1413697536  p2= 1  p3= 0 
WAIT # 1 : nam='SQL*Net message to client' ela=  2  p1= 1413697536  p2= 1  p3= 0 
WAIT # 1 : nam='SQL*Net message from client' ela=  196  p1= 1413697536  p2= 1  p3= 0 
BINDS # 1 :
EXEC # 1 :c= 0 ,e= 150 ,p= 0 ,cr= 0 ,cu= 0 ,mis= 0 ,r= 0 ,dep= 0 ,og= 3 ,tim= 10424795810460 
WAIT # 1 : nam='SQL*Net message to client' ela=  2  p1= 1413697536  p2= 1  p3= 0 
WAIT # 1 : nam='SQL*Net message from client' ela=  341  p1= 1413697536  p2= 1  p3= 0 
WAIT # 1 : nam='SQL*Net message to client' ela=  3  p1= 1413697536  p2= 1  p3= 0 
FETCH # 1 :c= 0 ,e= 163 ,p= 0 ,cr= 3 ,cu= 0 ,mis= 0 ,r= 1 ,dep= 0 ,og= 3 ,tim= 10424795811251 
WAIT # 1 : nam='SQL*Net message from client' ela=  1644478  p1= 1413697536  p2= 1  p3= 0 

Второй вариант. Селект из нескольких таблиц:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
PARSING  IN  CURSOR # 4  len= 1841  dep= 0  uid= 24  oct= 3  lid= 24  tim= 10424817998011  hv= 2768689548  ad='8f5af7b8'
 select ............................... from t1, t2 where ............................ 
 END   OF  STMT
PARSE # 4 :c= 0 ,e= 520 ,p= 0 ,cr= 0 ,cu= 0 ,mis= 0 ,r= 0 ,dep= 0 ,og= 3 ,tim= 10424817998008 
WAIT # 4 : nam='SQL*Net message to client' ela=  1  p1= 1413697536  p2= 1  p3= 0 
WAIT # 4 : nam='SQL*Net message from client' ela=  211  p1= 1413697536  p2= 1  p3= 0 
WAIT # 4 : nam='SQL*Net message to client' ela=  1  p1= 1413697536  p2= 1  p3= 0 
WAIT # 4 : nam='SQL*Net message from client' ela=  565  p1= 1413697536  p2= 1  p3= 0 
=====================
PARSING  IN  CURSOR # 4  len= 18  dep= 0  uid= 24  oct= 3  lid= 24  tim= 10424817999179  hv= 4170230875  ad='f7e92598'
select * from t1
 END   OF  STMT
PARSE # 4 :c= 0 ,e= 26 ,p= 0 ,cr= 0 ,cu= 0 ,mis= 0 ,r= 0 ,dep= 0 ,og= 3 ,tim= 10424817999176 
WAIT # 4 : nam='SQL*Net message to client' ela=  0  p1= 1413697536  p2= 1  p3= 0 
WAIT # 4 : nam='SQL*Net message from client' ela=  216  p1= 1413697536  p2= 1  p3= 0 
WAIT # 4 : nam='SQL*Net message to client' ela=  1  p1= 1413697536  p2= 1  p3= 0 
WAIT # 4 : nam='SQL*Net message from client' ela=  567  p1= 1413697536  p2= 1  p3= 0 
=====================
PARSING  IN  CURSOR # 4  len= 28  dep= 0  uid= 24  oct= 3  lid= 24  tim= 10424818000273  hv= 820958625  ad='d1c8d678'
select * from t2
 END   OF  STMT
PARSE # 4 :c= 0 ,e= 23 ,p= 0 ,cr= 0 ,cu= 0 ,mis= 0 ,r= 0 ,dep= 0 ,og= 3 ,tim= 10424818000269 
WAIT # 4 : nam='SQL*Net message to client' ela=  0  p1= 1413697536  p2= 1  p3= 0 
WAIT # 4 : nam='SQL*Net message from client' ela=  178  p1= 1413697536  p2= 1  p3= 0 
WAIT # 4 : nam='SQL*Net message to client' ela=  1  p1= 1413697536  p2= 1  p3= 0 
WAIT # 4 : nam='SQL*Net message from client' ela=  564  p1= 1413697536  p2= 1  p3= 0 
WAIT # 4 : nam='SQL*Net message to client' ela=  0  p1= 1413697536  p2= 1  p3= 0 
WAIT # 4 : nam='SQL*Net message from client' ela=  491  p1= 1413697536  p2= 1  p3= 0 
=====================
PARSING  IN  CURSOR # 4  len= 1841  dep= 0  uid= 24  oct= 3  lid= 24  tim= 10424818002448  hv= 2768689548  ad='8f5af7b8'
 select ............................... from t1, t2 where ............................ 
 END   OF  STMT
PARSE # 4 :c= 0 ,e= 282 ,p= 0 ,cr= 0 ,cu= 0 ,mis= 0 ,r= 0 ,dep= 0 ,og= 3 ,tim= 10424818002445 
WAIT # 4 : nam='SQL*Net message to client' ela=  1  p1= 1413697536  p2= 1  p3= 0 
WAIT # 4 : nam='SQL*Net message from client' ela=  289  p1= 1413697536  p2= 1  p3= 0 
WAIT # 4 : nam='SQL*Net message to client' ela=  4  p1= 1413697536  p2= 1  p3= 0 
WAIT # 4 : nam='SQL*Net message from client' ela=  281  p1= 1413697536  p2= 1  p3= 0 
BINDS # 4 :
.......................
EXEC # 4 :c= 10000 ,e= 8748 ,p= 0 ,cr= 0 ,cu= 0 ,mis= 0 ,r= 0 ,dep= 0 ,og= 3 ,tim= 10424818012589 
WAIT # 4 : nam='SQL*Net message to client' ela=  2  p1= 1413697536  p2= 1  p3= 0 
WAIT # 4 : nam='SQL*Net message from client' ela=  316  p1= 1413697536  p2= 1  p3= 0 
WAIT # 4 : nam='db file sequential read' ela=  9986  p1= 174  p2= 1412248  p3= 1 
.......................
FETCH # 4 :c= 180000 ,e= 2959455 ,p= 403 ,cr= 2289 ,cu= 0 ,mis= 0 ,r= 4 ,dep= 0 ,og= 3 ,tim= 10424820972601 
........................

DML:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
=====================
PARSING  IN  CURSOR # 6  len= 77  dep= 0  uid= 24  oct= 7  lid= 24  tim= 10424812766889  hv= 3825609337  ad='26f5b510'
delete from t3 where ............
 END   OF  STMT
PARSE # 6 :c= 0 ,e= 182 ,p= 0 ,cr= 0 ,cu= 0 ,mis= 0 ,r= 0 ,dep= 0 ,og= 3 ,tim= 10424812766883 
WAIT # 6 : nam='SQL*Net message to client' ela=  2  p1= 1413697536  p2= 1  p3= 0 
WAIT # 6 : nam='SQL*Net message from client' ela=  306  p1= 1413697536  p2= 1  p3= 0 
=====================
PARSING  IN  CURSOR # 6  len= 77  dep= 0  uid= 24  oct= 7  lid= 24  tim= 10424812767616  hv= 3825609337  ad='26f5b510'
delete from t3 where ............
 END   OF  STMT
PARSE # 6 :c= 0 ,e= 63 ,p= 0 ,cr= 0 ,cu= 0 ,mis= 0 ,r= 0 ,dep= 0 ,og= 3 ,tim= 10424812767610 
WAIT # 6 : nam='SQL*Net message to client' ela=  2  p1= 1413697536  p2= 1  p3= 0 
WAIT # 6 : nam='SQL*Net message from client' ela=  221  p1= 1413697536  p2= 1  p3= 0 
=====================
PARSING  IN  CURSOR # 6  len= 77  dep= 0  uid= 24  oct= 7  lid= 24  tim= 10424812768270  hv= 3825609337  ad='26f5b510'
delete from t3 where ............
 END   OF  STMT
PARSE # 6 :c= 0 ,e= 63 ,p= 0 ,cr= 0 ,cu= 0 ,mis= 0 ,r= 0 ,dep= 0 ,og= 3 ,tim= 10424812768263 
WAIT # 6 : nam='SQL*Net message to client' ela=  2  p1= 1413697536  p2= 1  p3= 0 
WAIT # 6 : nam='SQL*Net message from client' ela=  198  p1= 1413697536  p2= 1  p3= 0 
BINDS # 6 :
EXEC # 6 :c= 250000 ,e= 243724 ,p= 0 ,cr= 11861 ,cu= 0 ,mis= 0 ,r= 0 ,dep= 0 ,og= 3 ,tim= 10424813012466 
WAIT # 6 : nam='SQL*Net message to client' ela=  8  p1= 1413697536  p2= 1  p3= 0 
WAIT # 6 : nam='SQL*Net message from client' ela=  397  p1= 1413697536  p2= 1  p3= 0 
STAT # 6  id= 1  cnt= 0  pid= 0  pos= 1  obj= 0  op='DELETE  '
STAT # 6  .......................................
WAIT # 6 : nam='SQL*Net message to client' ela=  2  p1= 1413697536  p2= 1  p3= 0 
WAIT # 6 : nam='SQL*Net message from client' ela=  212  p1= 1413697536  p2= 1  p3= 0 
XCTEND rlbk= 0 , rd_only= 1 
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034318
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у ADO может быть 2 провайдера (MS и Oracl'e)
______________________________________________
Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде!
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034340
KoTTT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Microsoft OLE DB Provider for Oracle
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034369
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KoTTTMicrosoft OLE DB Provider for Oracle
в ADOConnection поставь провайдера Oracle - ничего переписывать ненадо.
MS в Oracle как свинья в апельсинах.
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034492
KoTTT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо. Будем пробовать.
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034570
Фотография Dmitry Arefiev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123MS в Oracle как свинья в апельсинах.
Хуже - старая свинья, так как использует OCI7.
Да и Oracle в OLEDB не Мастер :)
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034585
KoTTT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробовали Oracle Data Provider for OLE DB 9.2 - ситуация не изменилась.
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034636
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KoTTTПопробовали Oracle Data Provider for OLE DB 9.2 - ситуация не изменилась.
я бы не стал так категорично:
- сравните план по скорости ADO|TOAD ADO|PSQL ADO|ASQLPLUS ADO|...

Вы не парсинг Oracla и его оптимизатор строите а приложение
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034647
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KoTTT
Я не разработчик, но они здесь рядом и самостоятельно пока не могут решить эту проблему.

====== разговаривайте с ними на одном языке

А меня, как DBA, такое кол-во "холостых" парсов в базе не устраивает.

======= вы уверены в своей квалификации?

Хорошо хоть автокоммиты уже увидели и отключили,

====== чем они плохи?

так же как и втыкание куда попало ROWID.

==== например?
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034661
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KoTTTПопробовали Oracle Data Provider for OLE DB 9.2 - ситуация не изменилась.
как DBA лучше бы поставили свежее :)
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034766
KoTTT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Давайте по порядку.
Вы не парсинг Oracla и его оптимизатор строите а приложение
Я ничего не строю. Я стремлюсь добиться того, чтобы с ораклом приложение работало корректно. И при этом не создавая лишней нагрузки в качестве "подарка".
А меня, как DBA, такое кол-во "холостых" парсов в базе не устраивает.
======= вы уверены в своей квалификации?
Какой ответ вы ожидате получить?

Хорошо хоть автокоммиты уже увидели и отключили,
====== чем они плохи?
Автокоммит - зло. Создающее опять же лишнюю нагрузку и вдобавок "незванное" (коммит я делаю тогда, когда надо мне , а не какому-то ADO).

так же как и втыкание куда попало ROWID.
==== например?
Запрос вида
Код: plaintext
select field from table
мало того, что парсится 2 раза, так еще и создает своего брата-близнеца
Код: plaintext
select rowid, field from table
который опять же два раза парсится.

как DBA лучше бы поставили свежее :)
Да похоже, что с OLE DB и так все понятно. Не думаю, что в 10-й версии что-то изменилось.
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034833
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автокоммит можно отключить свойствами ADO ( транзакции станут длиннее )
причём тут ADO?

rowid вероятно из-за типа курсора для правки а не для чтения (можно отключить свойствами ADO )
причём тут ADO?
______________________________________________
Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде!
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034855
KoTTT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123автокоммит можно отключить свойствами ADO ( транзакции станут длиннее )
причём тут ADO?

rowid вероятно из-за типа курсора для правки а не для чтения (можно отключить свойствами ADO )
причём тут ADO?
Я выше писал, что это нашли и исправили.
Причем тут ADO? Ни при чем. Косяк разработки.
Вот если бы вы еще показали, как можно отключить свойствами ADO эти двойные разборы запросов, было бы совсем хорошо. Я собственно ради этого тему и открыл.
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034958
Фотография Альт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
с 2005 года не работал с ado, но есть мысль, что можно поколупаться в направлении неких Prepare... т.к. легко вспоминается необходимость внесения изменений например в тот же InternalInitFieldDefs из ADODB (немного другая тема... да и базы были mssql)
подспорьем в разбирательствах будет наличие у вас того же бесплатного BetterADO от http://betterado.hit.bg/ ... ну и msdn само собой... (посоветовал бы заглянуть и в исходники SDAC, но уже не принципиально)
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35034999
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KoTTT Petro123автокоммит можно отключить свойствами ADO ( транзакции станут длиннее )
причём тут ADO?

rowid вероятно из-за типа курсора для правки а не для чтения (можно отключить свойствами ADO )
причём тут ADO?
Я выше писал, что это нашли и исправили.
Причем тут ADO? Ни при чем. Косяк разработки.
Вот если бы вы еще показали, как можно отключить свойствами ADO эти двойные разборы запросов, было бы совсем хорошо. Я собственно ради этого тему и открыл.
- думаю, транзакции должны быть как можно короче (автокоммит сразу)
- для вторичного парсинга надо убедится что приложение не отправляет запрос 2 раза

тест - НОВЫЙ exe
Код: plaintext
1.
2.
3.
q := TADOQuery.Create
q.Conn := conn;
q.SQL.text := 'select ... from table1, table2, table3 where...';
q.Open;

трейс1 сюда (хотя я в них несилён)

Код: plaintext
q.Close;

трейс2 сюда (хотя я в них несилён)
...
Рейтинг: 0 / 0
ADO + Oracle + многократный парсинг
    #35035012
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
- научи программистов делать трейс сразу справа на экране в динамике (в Oracle вроде проблема с этим).
- будут знать, какие действия на сервере вызывает кнопка ТипКурсора в TADOQuery
______________________________________________
Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде!
...
Рейтинг: 0 / 0
25 сообщений из 66, страница 1 из 3
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ADO + Oracle + многократный парсинг
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]