java jdbc存取oracle clob类型
-
suifeng2316
2014-07-09 10:51:22
-
Oracle
-
转载
package oracle.clob;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;
import java.io.StringReader;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import oracle.jdbc.driver.OracleDriver;
import oracle.sql.CLOB;
public class ClobTest {
String url =
"jdbc:oracle:thin:@192.168.2.157:1521:orcl";
String user
= "xj";
String pwd =
"xj";
String text
= "这是要插入到CLOB里面的数据";
private void
clobImport() throws ClassNotFoundException, SQLException {
// TODO Auto-generated method stub
DriverManager.registerDriver(new OracleDriver());
Connection conn = DriverManager.getConnection(url, user, pwd);//
得到连接对象
String sql = "insert into clob_test(id,str) values ('1',?)";//
要执行的SQL语句
PreparedStatement stmt = conn.prepareStatement(sql);//
加载SQL语句
// PreparedStatement支持SQL带有问号?,可以动态替换?的内容。
Reader clobReader = new StringReader(text); // 将 text转成流形式
stmt.setCharacterStream(1, clobReader, text.length());//
替换sql语句中的?
int num = stmt.executeUpdate();// 执行SQL
if (num > 0) {
System.out.println("ok");
} else {
System.out.println("NO");
}
stmt.close();
conn.close();
}
private void
clobExport() throws ClassNotFoundException, SQLException,
IOException {
// TODO Auto-generated method stub
CLOB clob = null;
String sql = "select * from clob_test where id=1";
DriverManager.registerDriver(new OracleDriver());
Connection conn = DriverManager.getConnection(url, user, pwd);//
得到连接对象
PreparedStatement stmt = conn.prepareStatement(sql);
ResultSet rs = stmt.executeQuery();
String id = "";
String content = "";
if (rs.next()) {
id = rs.getString("id");// 获得ID
clob = (oracle.sql.CLOB) rs.getClob("str"); // 获得CLOB字段str