Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Java gibt einen leeren String-Wert für Oracle VARCHAR2 zurück

Ich bin auf dasselbe Problem gestoßen mit:

  1. Oracle 9i Enterprise Edition 64bit (JServer Rlease 9.2.0.1.0 - Produktion)
  2. JDBC 12.1.0.1.0 - ojdbc7.jar
  3. Java OpenJDK 64bit, 1.7.0_09-icedtea

mit einer Tabelle wie dieser:Tabelle erstellen person (first_name varchar2(60));

Und Abfrage wie folgt mit sqlline:select first_name, cast(substr(first_name,0,1) as char) from person;

Hätte eine Ergebnismenge von ["","S"].

Ich hatte keine anderen Oracle-Jars in meinem Klassenpfad, da sich herausstellte, dass dies für andere problematisch war, aber als ich von ojdbc7.jar zu ojdbc6_g.jar wechselte, wurde dieses Problem behoben. Dies ist die Treiberversion 11.2.0.3.0, die im 12c-Downloadbereich zu finden ist.