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

Sollte ich JDBC getNString() anstelle von getString() verwenden?

Ich habe unsere Anwendung getestet und es scheint, dass getNString() ist bei Java 6-, JDBC 6-, Oracle JDBC 6-Treibern und Oracle 11.1.0.6.0 nicht erforderlich. Die von mir verwendete Testzeichenfolge war "Δ, Й, ק, م, ๗, あ, 叶, 葉 und 말", kopiert von http://en.wikipedia.org/wiki/Unicode .

Die meisten unserer Datenzugriffe erfolgen über gespeicherte Prozeduren. Java konnte die obige Testzeichenfolge über setObject() korrekt setzen und abrufen und getString() (nicht setString() aus Abstraktionsgründen), Daten von der Schnittstelle sammeln und wie erwartet an die Schnittstelle zurückschreiben.

Daher getString() funktioniert gut für Unicode-Daten mit Oracle 11g (wie SQL Server wie im obigen Link), daher werden wir dies weiterhin anstelle von getNString() verwenden .