Какво означава грешка на Oracle ORA-17432: невалидни опции във всички7?

Получих следното SQLException: "невалидни опции във всички7"

При търсене в гугъл на съобщението за грешка ЕДИНСТВЕНИТЕ попадения, които видях, бяха списъци с грешки на Oracle, които посочиха грешката в „ORA-17432: невалидни опции във всички7“. За съжаление търсенето в гугъл за грешка # изведе само комбинирани списъци без обяснение за грешката, освен тази страница, която казваше "Съобщение за TTC грешка" като цялото обяснение.

Грешката възниква, когато програма на Java извлича данни от подготвено извикване на израз, изпълнявайки процедура, която връща доста голям, но не неразумно # редове чрез курсор.

Мога да добавя проследяването на стека от изключението, както и кондензиран код, но предполагам, че това не е много подходящо за разгадаване какво означава „ORA-17432: невалидни опции във всички7“.

Контекст:

Изглежда, че се е появила грешка, когато Java програмата е мигрирана от Oracle 9 OCI към Oracle 10.2 тънък клиент. Процедурата, когато се изпълнява директно срещу база данни (чрез Toad), работи перфектно и връща правилния курсор с правилни данни и без грешки.

Това изглежда е нещо специфично за данните (може би е размерът на набора от резултати?), тъй като изпълнението на същия точен код срещу различна валута като параметър на процедурата (който връща много по-малък набор от резултати) работи 100% добре.


person DVK    schedule 11.10.2009    source източник
comment
И аз не мога да намеря нищо смислено в Metalink по този въпрос....   -  person Rob van Laarhoven    schedule 11.10.2009
comment
Публикувайте заявката и как я извиквате чрез JDBC.   -  person OMG Ponies    schedule 12.10.2009
comment
TTC изглежда е свързан с преобразуване на набор от знаци или тип, когато се обменят данни между клиент и сървър: download.oracle.com/docs/cd/B28359_01/network.111/b28316/ и download.oracle.com/docs/cd/B28359_01/java.111/b31224/   -  person Juergen Hartelt    schedule 12.10.2009


Отговори (2)


Това почти сигурно не е нещо, върху което ще имате контрол. Изглежда като проблем с начина, по който вашият тънък драйвер използва двузадачния общ (TTC) протокол. Едно нещо, което трябва да се отбележи е, че този вид неща могат да бъдат много чувствителни към версията на драйвера, който използвате. Уверете се, че имате най-новата версия на JDBC драйвера за комбинацията от версията на Java, която използвате, и версията на Oracle на сървъра.

person Alohci    schedule 12.10.2009

Akohchi - бяхте в правилната област, макар и не съвсем правилно. Обяснението, получено чрез обаждането за поддръжка на Oracle, беше, че тази версия на Java (1.3) не е съвместима с новия Oracle. Java 1.4 коригира проблема.

person DVK    schedule 27.10.2009