Oracle
 sql >> Base de données >  >> RDS >> Oracle

java renvoie une valeur de chaîne vide pour oracle VARCHAR2

J'ai rencontré le même problème en utilisant :

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

avec une table comme celle-ci :créer une table person (first_name varchar2(60));

Et interrogez comme ceci en utilisant sqlline :sélectionnez first_name, cast(substr(first_name,0,1) as char) from person ;

Aurait un ensemble de résultats de ["","S"].

Je n'avais pas d'autres jars Oracle sur mon chemin de classe, car cela posait problème pour les autres, mais lorsque je suis passé de ojdbc7.jar à ojdbc6_g.jar, ce problème a été résolu. Il s'agit de la version 11.2.0.3.0 du pilote qui se trouve dans la section de téléchargement 12c.