我读了documentation。据我所知setAsciiStream
只需要两个参数。
但是在official java snippet中可以找到以下内容:
pstmtFld.setAsciiStream(1, dataStream, -1);
pstmtFld.executeUpdate();
我很困惑。 setAsciiStream
究竟做了什么,尤其是第三个论点是什么?
答案 0 :(得分:1)
您正在查看错误的javadoc: http://docs.oracle.com/javase/6/docs/api/java/sql/PreparedStatement.html#setAsciiStream(int,%20java.io.InputStream,%20long)
setAsciiStream(int parameterIndex, InputStream x, 长的) 抛出SQLException 将指定参数设置为给定输入流,该输入流将具有指定的字节数。当一个非常大的ASCII值输入到LONGVARCHAR参数时,通过java.io.InputStream发送它可能更实际。将根据需要从流中读取数据,直到达到文件结尾。 JDBC驱动程序将执行从ASCII到数据库char格式的任何必要转换。 注意:此流对象可以是标准Java流对象,也可以是您自己的实现标准接口的子类。
答案 1 :(得分:1)