と私が一緒にまたはI場合は任意のレコードを挿入せずにthis-UnsupportedCharsetException:Cp1027は、DB2 JDBCドライバー
CREATE TABLE scma.timetest(
T_TYPE VARCHAR(8),
T_DATE TIMESTAMP
);
などのJDBCクライアントからメインフレーム上のIBM DB2のタイプTimestamp
の列を持つ単純なデータベーステーブルを作成しています私はタイムスタンプ型の列を持っていない場合、私は以下のexception-
java.nio.charset.UnsupportedCharsetException: Cp1027
を取得し終わるselect * from scma.timetest;
は、すべてが正常に動作します。私は-Dfile.encoding=UTF-8
でJDBCクライアントを開始しようとしましたが、無駄です。 Javaプログラムからも同じことを試みましたが、同じエラーが発生します。
hereと同じ問題ではありませんが、私はClassNotFoundExceptionを取得しません。何らかのポインタが間違っている可能性があります。 z/OSの
レガシーDB2は、多くの場合、文字データのために(もCP1027として知られている)EBCDICエンコーディングを使用します。それは、コメントから、ここでこの移動
Exception in thread "main" java.nio.charset.UnsupportedCharsetException: Cp1027
at java.nio.charset.Charset.forName(Charset.java:531)
at com.ibm.db2.jcc.am.t.<init>(t.java:13)
at com.ibm.db2.jcc.am.s.a(s.java:12)
at com.ibm.db2.jcc.am.o.a(o.java:444)
at com.ibm.db2.jcc.t4.cc.a(cc.java:2412)
at com.ibm.db2.jcc.t4.cb.a(cb.java:3513)
at com.ibm.db2.jcc.t4.cb.a(cb.java:2006)
at com.ibm.db2.jcc.t4.cb.a(cb.java:1931)
at com.ibm.db2.jcc.t4.cb.m(cb.java:765)
at com.ibm.db2.jcc.t4.cb.i(cb.java:253)
at com.ibm.db2.jcc.t4.cb.c(cb.java:55)
at com.ibm.db2.jcc.t4.q.c(q.java:44)
at com.ibm.db2.jcc.t4.rb.j(rb.java:147)
at com.ibm.db2.jcc.am.mn.kb(mn.java:2107)
at com.ibm.db2.jcc.am.mn.a(mn.java:3099)
at com.ibm.db2.jcc.am.mn.a(mn.java:686)
at com.ibm.db2.jcc.am.mn.executeQuery(mn.java:670)
ランタイムJavaクラスパス – Rehman
@Rehmanにrt.jarが明示的に参照されていることを確認してください。 – User2709
どのOSを使用していますか? – Rehman