Zrobiłem test na naszej aplikacji i wygląda na to, że getNString()
nie jest konieczne w przypadku sterowników Java 6, JDBC 6, Oracle JDBC 6 i Oracle 11.1.0.6.0. Użyłem ciągu testowego „Δ, Й, ק, م, ๗, あ, 叶, 葉 i 말”, skopiowany z http://en.wikipedia.org/wiki/Unicode
.
Większość naszego dostępu do danych odbywa się za pośrednictwem procedur przechowywanych. Java była w stanie poprawnie ustawić i pobrać powyższy ciąg testowy za pomocą setObject()
i getString()
(nie setString()
z powodów abstrakcji), zbieranie danych z interfejsu i zapisywanie ich z powrotem do interfejsu zgodnie z oczekiwaniami.
Stąd getString()
działa dobrze dla danych Unicode z Oracle 11g (jak SQL Server, jak w powyższym linku), więc będziemy nadal używać tego zamiast getNString()
.