2014-01-27 1 views
0

Как узнать использование индекса конкретного модуля в Openedge 10.2, который использует схему Oracle db?Index Check in OpenEdge 10.2b, который использует схему Oracle

Я использовал XREF, но .xrf не дает никаких указательных данных для моего модуля, поэтому я пропустил ниже простого запроса, а затем зарегистрировался в .xrf, но нет доступных данных индекса.

FOR EACH tablename NO-LOCK USE-INDEX indexname: 
DISPLAY tablename.field. 
END. 

Пожалуйста, помогите мне, как получить информацию о деталях для Progress db, используя схему oracle.

+0

Hello to Stack Overflow! Как вы, возможно, видели, я отредактировал ваш вопрос, чтобы быть более совместимым с правилами SO, пожалуйста, прочитайте часто задаваемые вопросы или спросите модераторов, если у вас есть какие-либо сомнения! –

+0

Не могли бы вы включить свой компилятор? – Jensd

ответ

0

Сначала я предполагаю, что вы используете Oracle DataServer от Progress.

Если это так, имейте в виду, что все USE-INDEX будут переведены в основном в ORDER BY в результате запроса, поэтому в основном используются для того, чтобы не обращаться к данным.

Если вы хотите узнать, как осуществляется доступ к вашей информации, вам необходимо включить qt_debug при подключении к держателю схемы, что позволит вам распечатать много информации о том, как ваш код прогресса переводится в SQL для доступа к Oracle DB , Вам нужно будет проанализировать эти SQL (SQL EXPLAIN в качестве примера), чтобы увидеть производительность ваших запросов и то, как они обращаются к БД.