java.lang.AbstractMethodError: com.informix.jdbc.IfxPreparedStatement.setCharact
/** * 插入clob数据 * @throws Exception */ public static void insertClobOfRead() throws Exception { PreparedStatement pstmt = null; String sql = "insert into table_clob1 values(?,?)"; Class.forName("com.informix.jdbc.IfxDriver").newInstance(); String url = "jdbc:informix-sqli://192.168.0.101:9088/db1:INFORMIXSERVER=ol_ids_1150_1;NEWLOCALE=zh_cn,en_us;NEWCODESET=gbk,8859-1,819;"; Connection conn = DriverManager.getConnection(url); pstmt = conn.prepareStatement(sql); File file = new File("d:/1.txt"); BufferedReader br = new BufferedReader(new FileReader(file)); pstmt.setString(1, "1"); pstmt.setCharacterStream(2, br, file.length()); br.close(); }运行上面的代码会出现下面的错误信息:
Exception in thread "main" java.lang.AbstractMethodError: com.informix.jdbc.IfxPreparedStatement.setCharacterStream(ILjava/io/Reader;J)V
错误原因: //informix数据库的jdbc驱动中的IfxPreparedStatement接口没有继承 //setCharacterStreamint(parameterIndex, Reader reader, long length) //只继承了setCharacterStreamint(parameterIndex, Reader reader, int length) //这里需要将长度强制装换为int类型修改: pstmt.setCharacterStream(2, br, (int)file.length());
页:
[1]