Я использую удаленную базу данных 4D v11 и драйвер ODBC 4D в Windows для доступа и чтения данных. Проблема связана с некоторыми строками таблицы: в этих строках есть столбцы, начинающиеся с пробела. Это предназначено.
Мое Java-приложение должно извлекать эти столбцы с их первым символом пробела. Но это не работает.
Драйвер ODBC 4D работает нормально. Тестируя его с помощью Microsoft Query в Excel, читая таблицу, столбцы имеют свой первый символ пробела.
В моей Java-программе я использую драйвер JDBC ODBC (jdk 1.7.0_51). Инструкции или классы open(), Statement, execute() и ResultSet являются стандартными JDBC. К сожалению, первый пробел никогда не извлекается при чтении.
Столбец виден как CLOB:
int myColumnWithFirstSpace = 5;
ResultSetMetaData rsmd = rs.getMetaData();
String type = rsmd.getColumnTypeName(myColumnWithFirstSpace );
System.out.println(type); // print CLOB
Единственным поддерживаемым классом является String:
String text= rs.getString(myColumnWithFirstSpace);
// other types return "Operation not yet supported"
System.out.println(text); // print the content of the column
И, к сожалению, в печатном тексте нет первого пробела. Где может быть ошибка? Спасибо!