Мы создаем приложение Java, поддерживаемое базой данных Oracle, доступ к которой осуществляется с помощью JDBC (драйверы ojdbc6.jar
и orai18n.jar
). Схема базы данных хранит текстовые столбцы в основном с использованием типа данных NVARCHAR2
.
В документации JDBC для JDBC ResultSet
говорится, что getNString()
специально предназначен для использования с типами данных NCHAR, NVARCHAR и т. Д., Но на данный момент мы используем только getString()
.
Кажется, это работает нормально, поэтому мне интересно, почему я должен использовать getNString()
вместо getString()
. Будет ли getString()
давать сбой, если будут введены не-ASCII-символы, или драйвер Oracle JDBC безразлично, какой метод мне следует использовать?
РЕДАКТИРОВАТЬ: кажется, что это может зависеть от базы данных: SQL Server, кажется, не против того, что вы используете , в зависимости от параметров подключения. У кого-нибудь есть какая-то конкретная информация об Oracle?