<code>PreparedStatement</code>对象可以使用输入和输出流来提供参数数据。能够将整个文件放入可以容纳大值的数据库列,例如<code>CLOB</code>和<code>BLOB</code>数据类型。
有以下方法可用于流式传输数据 -
<code>setAsciiStream()</code>:此方法用于提供大的ASCII值。
<code>setCharacterStream()</code>:此方法用于提供较大的UNICODE值。
<code>setBinaryStream()</code>:此方法用于提供较大的二进制值。
<code>setXXXStream()</code>方法除了参数占位符之外还需要额外的参数和文件大小。此参数通知驱动程序使用流向数据库发送多少数据。
考虑要将XML文件<code>xml_data.xml</code>上传到数据库表中。下面是XML文件的内容 -
XML
将此XML文件保存在要运行此示例的同一目录中。
此示例将在数据库创建一个表:xml_data,然后将文件<code>xml_data.xml</code>上传到此表中。
复制以下示例代码,并保存在文件:StreamingData.java 中,编译并运行如下 -