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