1
javaを使用してClobフィールドを取得する際に問題が発生します。だから、これは私がやったことです:Javaを使用してClobを取得する方法
String
sql = ("SELECT DBMS_LOB.substr(LDTEXT, 1000) AS TEXT "
+ "FROM LONGDESCRIPTION ");
try (Connection connection = BDOracle.abreConexaoDB2();
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery(sql);
) {
while (resultSet.next()) {
それはここ壊れる:
Clob clob = (Clob) resultSet.getClob("TEXT");
long length = clob.length();
String out = clob.getSubString(1, (int) length);
}
} catch (SQLException err) {
System.out.println(err.getMessage());
}
例外を返します:
ERRORCODE = -4461、SQLSTATE = 42815 [JCC] [T4を] [1092] [11644] [3.53.70] 要求された変換のデータ変換が間違った結果の列の種類が無効です。
クエリはデータベースで正常に動作し、DB2を使用しています。
あなたは正しいです!私はコードを変更し、 "getString()"を使用し、それは完全に働いた。どうもありがとう –