Long Datentyp in Funktion

Steffen2412

Grünschnabel
Hallo,

ich nutze Oracle 9i und möchte in Pl/SQL einen Cursor mit einer Select Anweisung füllen und diesen dann als OUT Parameter zurückgeben.
Um den Cursor zu füllen muss ich aus einer Spalte (p.high_value) des Datentyps Long, einen Substring selektieren und diesen dann in Number wandeln.
Habe dazu die Funktion
ret_int(value in long) return number
definiert, die den Long Wert aufnimmt und den Number Wert zurück gibt.

Hier ein Teil des Quelltextes:

Code:
open status_cursor for
      select p.partition_name Partitionsname,
             ret_int(p.high_value) High_Value,
             ts.status Status,
             p.tablespace_name Tablespace_Daten,
             i.tablespace_name Tablepsace_Index
        from 
       .....

jetzt kommt immer der Fehler Ora-00997, d.h. ein Long Wert darf nicht in einer Funktion verwendet werden. Gibt es eine andere Möglichkeit das Problem zu lösen?
Oder kann man einen Long Wert in Varchr2 wandeln?


Thx

Steffen
 
Zuletzt bearbeitet:
Zurück