Como atualizar a string vazia para o oracle Clob

Sei que funciona usando SQL

update activity set REFERENCE = EMPTY_CLOB() where id = ?

Mas eu não posso fazer assim, não consigo codificar 'EMPTY_CLOB ()' no SQL. Eu usei o caminho da seguinte maneira:

String empty_string = "";
conn = getConnection();

pStmt = conn.prepareStatement("SELECT REFERENCE FROM activity WHERE ID = ? FOR UPDATE");
pStmt.setLong(1, 1);
rset = pStmt.executeQuery();
Clob clob = null;
while (rset.next()) {
    clob = rset.getClob(1);
    Writer writer = adapter.getCharacterOutputStream(clob);
    writer.write(empty_string);         
    writer.flush();
    writer.close();
}

pStmt = conn.prepareStatement("update activity set REFERENCE = ? WHERE ID = ?");
pStmt.setClob(1, clob);
pStmt.setLong(2, 1);
pStmt.executeUpdate();

Mas não funcionou. o clob não foi atualizado para uma string vazia, mas ainda armazenado como valor anterior.

Qualquer corpo pode me ajudar niss

questionAnswers(1)

yourAnswerToTheQuestion