JavaでCLOB型データを処理する方法

Java で CLOB 型データを扱う場合は、java.sql.Clob インタフェースと java.sql.PreparedStatement を使用して操作できます。以下に CLOB 型データを扱うサンプルコードを示します。1. CLOB 型データの読み込み:

Connection conn = DriverManager.getConnection(url, username, password);
String sql = "SELECT clob_column FROM table_name WHERE id = ?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, id);
ResultSet rs = pstmt.executeQuery();
if(rs.next()) {

Clob clob = rs.getClob(“clob_column”);

 

Reader reader = clob.getCharacterStream();

 

char[] buffer = new char[1024];

 

int bytesRead;

 

StringBuilder sb = new StringBuilder();

 

while((bytesRead = reader.read(buffer)) != -1) {

 

sb.append(buffer, 0, bytesRead);

 

}

 

String clobData = sb.toString();

 

// 处理CLOB类型数据

 

System.out.println(clobData); } rs.close(); pstmt.close(); conn.close();


CLOB型データの書き込み

Connection conn = DriverManager.getConnection(url, username, password);
String sql = “INSERT INTO table_name (id, clob_column) VALUES (?, ?)”;
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, id);
Clob clob = conn.createClob();
clob.setString(1, clobData);
pstmt.setClob(2, clob);
int affectedRows = pstmt.executeUpdate();
pstmt.close();
conn.close();

SQL.ClobインターフェースとSQL.PreparedStatementを使用してCLOB型のデータの読み書きを行う方法について、このコードサンプルでは例を示しています。まず、SELECT文を実行してCLOB型のデータを取得し、getClobメソッドを使用してClobオブジェクトを取得します。次に、getCharacterStreamメソッドでCLOBデータのストリームを取得し、文字列をよみ取ることで、StringBuilderにCLOBのデータを読み込みます。最後に、CLOBデータをString型に変換して処理します。CLOB型のデータの書き込みについては、最初Clobオブジェクトを作成してから、setStringメソッドでデータに書き込む文字列をClobオブジェクトに設定します。そして、PreparedStatementにsetClobメソッドでClobオブジェクトを設定し、executeUpdateメソッドを使用してSQL文を実行してDBに書き込みます。

bannerAds