Oracle-jdbc - Datenyp einer Spalte ermitteln?

Hallo,

ich möchte möglichst generisch Daten in Tabellen unterschiedlichster Art einfügen. Ich bekomme als Input eine XML-Datei, in der nur der Tabellenname und dann jeweils Spaltenname und Wert stehen. Nun kann ich daraus leider nicht ersehen, ob es sich um einen String oder eine Zahl etc. handelt. Da die Syntax im Insert-Statement ja aber eine ist dachte ich mir nun, diese Information vielleicht aus der Datenbank ziehen zu können.

Wie kann ich die Datentypen der Spalten einer Tabelle via jdbc aus Java heraus ermitteln? In sqlplus geht das ja mit „DESC ;“, aber das wird über jdbc leider nichts. Sieht da jemand eine Möglichkeit? Zum Beispiel irgendwelche Systemtabellen oder so? Es sollte möglichst performant sein…

Hat jemand ganz andere Ideen? Ich weiß gerade nicht so recht weiter ;-(

Hallo,

Wie kann ich die Datentypen der Spalten einer Tabelle via jdbc
aus Java heraus ermitteln? In sqlplus geht das ja mit „DESC
;“, aber das wird über jdbc leider nichts.
Sieht da jemand eine Möglichkeit? Zum Beispiel irgendwelche
Systemtabellen oder so? Es sollte möglichst performant sein…

–> Du kannst die VIEW sys.all_tab_columns benutzten, dort sind alle Informationen enthalte, welche du benötigst. Du musst natürlich noch nach Owner (=Denie Schmema) und Tabellenname filtern…

Hi,
du kannst entweder die jdbc Metadata Funktionalität nutzen (einfach mal die Api nach METADATA durchsuche), oder du suchst dir die Sachen selbst aus dem Datadictionary.

Mach einfach mal ein select auf

dict
user_tables
user_tab_columns

Vielen Dank für den Tipp! (kT)
kT

Vielen Dank für den Tipp! (kT)
(kT)