Eu fiz um teste em nosso aplicativo e parece que
getNString()
é desnecessário com drivers Java 6, JDBC 6, Oracle JDBC 6 e Oracle 11.1.0.6.0. A string de teste que usei foi "Δ, Й, ק, م, ๗, あ, 叶, 葉 e 말", copiada de http://en.wikipedia.org/wiki/Unicode
. A maior parte do nosso acesso a dados é feito através de procedimentos armazenados. Java foi capaz de definir e recuperar a string de teste acima corretamente via
setObject()
e getString()
(não setString()
por motivos de abstração), coletando dados da interface e gravando-os de volta na interface conforme o esperado. Portanto,
getString()
funciona bem para dados Unicode com Oracle 11g (como SQL Server como no link acima), então continuaremos a usar isso em vez de getNString()
.