ORA-03113 Fehler

Hallo zusammen!

Ich habe ein Programm welches mit Oracle Forms (6i) programmiert wurde.
Ich versuche mit dieser Anwendung auf eine einfache Tabelle einer Oracle DB zuzugreifen
(Version: Oracle9i Enterprise Edition Release 9.2.0.7.0) und bekomme folgende
Fehlerfolge:
FRM-40505: ORACLE-Fehler: Abfrage konnte nicht ausgeführt werden.
ORA-01009: missing mandatory parameter
FRM-40655: SQL-Fehler führt zum Rollback: Form leeren und Transaktion neu eingeben.

Dieses Problem tritt nur bei einer DB auf. Auf anderen Datenbanken gibt es hierbei keinerlei Probleme.
Um die Abfrage aus der Form direkt auf der Datenbank auszufüren habe ich mich angemeldet und
konnte bei dem Befehl…

Select *
from Tabelle
order by decode(zeichen, (select nation
from Tabelle
where betrieb = 1 and wijahr = 2007),
‚A‘||nation, ‚Z‘||nation);

… folgende Fehler feststellen:
Error at line 1:
ORA-03113: end-of-file on communication channel
Folgefehler:
ORA-03114: not connected to ORACLE oder
ORA-01041: internal error. hostdef extension doesen’t exist

Wie gesagt gibt es auf anderen DB keinerlei Probleme.
Auch der Select - Zugriff auf die Tabelle ohne decode ergibt kein Fehler.

Hat vielleicht jemand eine Idee, warum an dieser Stelle die ORA-03113 Meldung kommt?
An dem Decode(…) kann es wohl nicht liegen…

Schönen Gruß
Thorsten Rodemeier

Hi!

Select *
from Tabelle
order by decode(zeichen, (select nation
from Tabelle
where betrieb = 1 and wijahr = 2007),
‚A‘||nation, ‚Z‘||nation);

Hast Du’s schon mal mit einer View probiert?
Andere Abfragen auf die DB funktionieren?
Die anderen DB’s sind idente Oracle-Versionen und idente Betriebssystem-Versionen (und auch Forms-Versionen)?
Die anderen DB’s sind ident aufgebaut (SGA, NLS, Segmente, Synonyme, …)?

Fragen, Fragen, Fragen, …

Grüße,
Tomh

Hallo!

Auch mit einem Zugriff per View bekomme ich den benannten Fehler!
Der Aufbau der DB, das BS und auch die DB-Versionen stimmen
überein.
Synonyme, Grants etc… sind alle korrekt angelegt und bei
allen Versionen gleich.
Auf die NLS Parameter habe ich leider keinen Zugriff.
Könnte hier das Problem liegen?

Thx und Gruß
Thorsten

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Thorsten,

könnte es evtl. sein dass du zuerst diesen Fehler beheben musst:

ORA-01009: missing mandatory parameter

Da würde ich mal auf der DB prüfen ob die NOT NULL Felder korrekt befüllt sind. Kann aber auch sein dass ich hier auf dem Holzweg bin und der Fehler nur eine Folge des anderen Fehler ist.

Hallo Benjamin.

Die ORA-01009 Meldung ist nur ein Folgefehler der in der Anwendung auftaucht.
Ich konnte den Fehler auf der DB reproduzieren und dabei ist mir folgendes aufgefallen:
Ich habe nun folgenden View:

create or replace view esf_plz_nation (nat_zeichen, nat_nation,nat_plz)
as
select max(nat_zeichen), upper(ltrim(rtrim(nat_nation))),max(nat_plz)
from nation
group by nat_nation;

Wenn ich nun die Abfrage: …

select nat_zeichen, nat_nation, nat_plz
from esf_plz_nation
order by decode(nat_zeichen,(select b_nat from btrdat where b_betrieb = 1 and b_wijahr = 2007),
‚A‘||nat_nation, ‚Z‘||nat_nation);

…ausführe, bekomme ich die beschriebenen Fehler…

Lasse ich nun im View die Funktion MAX(…) und ltrim, rtrim etc. weg,
läuft alles einwandfrei. Führe ich nur den SELECT: …

select max(nat_zeichen), upper(ltrim(rtrim(nat_nation))),max(nat_plz)
from nation
group by upper(ltrim(rtrim(nat_nation)));

… aus bekomme ich auch keine Meldungen. Hmm… Ich bin ratlos!!!

Wie gesagt, bei allen anderen DB`s gibts keinerlei Probleme?!

Schönen Gruß Thorsten

#####################################################################

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Thorsten,

Das kommt mir irgendwie spanisch vor. Der Ora-3113 und 3114 sind Verbindungsfehler.
Dann dürften deine Abfragen aber in keinem Fall funktioneren.
Ich tendiere immer noch zu einem Datenproblem, vor allem da du ja sagst dass es auf der einen DB funktioniert und auf der anderen nicht, allerdings ist das ohne Datenbasis äußerst schwer nachzuvollziehen.

Hallo nochmal!
Hmm…selsam ist, das die Abfrage funzt und sobald diese als View verpackt wird
Fehlermeldungen verursacht.
Die Verbindung zu Oracle wird nach jedem Zugriff auf den View getrennt.
Alle NOT NULL Felder sind gefüllt!
Ich schaue mir die Daten nochmal genauer an…Vielleicht werde ich ja fündig!!!

Danke und Gruß
Thorsten

###########################################################

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Scheint ein öfters auftretendes Problem zu sein.
Bei Views mit DB Link, ORDER BY und anderem…

Hab zwar die Lösung noch nicht gefunden, aber auf jeden Fall steht hier etwas dazu…

http://forums.oracle.com/forums/thread.jspa?threadID…

Hi Thorsten,

wie sieht es aus mit:
Server Version
Client Version
Client Settings
Server Settings

Vielleicht kommen wir ja damit weiter.

Lg
Martin

Hi!
An welche Einstellungen hättest Du denn gedacht?
Gruß Thorsten

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]