文字列からClobオブジェクトを作成する必要がある状況があります。問題は、そのメソッドにConnectionManagerを含めることができないことです。
私はのようないくつかのユーティリティが必要です
public Clob getClob(String data){
}
どうすればこれを作ることができるか誰か教えてもらえますか?.
また、oralce.sql.CLOBもあります。ただし、オブジェクトを作成するには接続が必要です。
これを試して :
OracleConnection conn; // initialize this first
CLOB clob = conn.createClob();
public Clob getClob(String data){
return clob.setString(position, data);
}
警告をスロー:Clobが初期化されていません。
Oracleデータベースを使用してClobを作成するには、OracleConnectionが必要です。
OracleConnection conn; // initialize this first
Clob myClob = conn.createClob();
private OracleConnection conn = null;
public void setConnection( OracleConnection conn )
{
this.conn = conn;
}
void setClob( String cookie ) throws SQLException
{
Clob myClob = conn.createClob();
myClob.setString( 1, cookie);
}
まだ別の答えを探している人は、以下に示すように、接続オブジェクトを必要とせずにClobオブジェクトを作成できます。
Clob myClob = new javax.sql.rowset.serial.SerialClob(stringData.toCharArray());
ここで他の回答に記載されているOracleConnectionを初期化するため、およびJavaストアドプロシージャに対してこれを実行しており、プロシージャが格納されているデータベースへの接続である場合、接続はこのように初期化されます:
Connection conn = DriverManager.getConnection("jdbc:default:connection:");
そして、このインポートが必要です:
import Oracle.jdbc.driver.OracleConnection;