PreparedStatement的getClob()方法用于从数据库中获取文件信息。
getClob方法的语法
public Clob getClob(int columnIndex){}
让我们看一下该示例的表结构以检索文件。
CREATE TABLE "FILETABLE"
( "ID" NUMBER, "NAME" CLOB
)
/
下面给出了从Oracle数据库检索文件的示例。
import java.io.*;
import java.sql.*;
public class RetrieveFile {
public static void main(String[] args) {
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con=DriverManager.getConnection(
"jdbc:oracle:thin:@localhost:1521:xe", "system", "oracle");
PreparedStatement ps=con.prepareStatement("select * from filetable");
ResultSet rs=ps.executeQuery();
rs.next();//now on 1st row
Clob c=rs.getClob(2);
Reader r=c.getCharacterStream();
FileWriter fw=new FileWriter("d:\\retrivefile.txt");
int i;
while((i=r.read())!=-1)
fw.write((char)i);
fw.close();
con.close();
System.out.println("success");
}catch (Exception e) {e.printStackTrace(); }
}
}
评论前必须登录!
注册