Вставьте CLOB в базу данных Oracle

My question is: Как вы обходитеORA-01704: string literal too long ошибка при вставке (или выполнении чего-либо в запросах) сCLOBs?

Я хочу иметь такой запрос:

INSERT ALL
   INTO mytable VALUES ('clob1')
   INTO mytable VALUES ('clob2') --some of these clobs are more than 4000 characters...
   INTO mytable VALUES ('clob3')
SELECT * FROM dual;

Когда я пытаюсь это с реальными значениями, хотя я получаюORA-01704: string literal too long назад. Это довольно очевидно, но как мне вставить clob (или выполнить какой-либо оператор вообще с clob)?

Я пытался посмотреть на этовопрос, но я не думаю, что он имеет то, что я ищу. Сгустки у меня вList<String> и я перебираю их, чтобы сделать заявление. Мой код таков:

private void insertQueries(String tempTableName) throws FileNotFoundException, DataException, SQLException, IOException {
String preQuery = "  into " + tempTableName + " values ('";
String postQuery = "')" + StringHelper.newline;
StringBuilder inserts = new StringBuilder("insert all" + StringHelper.newline);
List<String> readQueries = getDomoQueries();
for (String query : readQueries) {
  inserts.append(preQuery).append(query).append(postQuery);
}
inserts.append("select * from dual;");

DatabaseController.getInstance().executeQuery(databaseConnectionURL, inserts.toString());

}

public ResultSet executeQuery(String connection, String query) throws DataException, SQLException {
  Connection conn = ConnectionPool.getInstance().get(connection);
  Statement stmt = conn.createStatement();
  ResultSet rs = stmt.executeQuery(query);
  conn.commit();
  ConnectionPool.getInstance().release(conn);
  return rs;
}

Ответы на вопрос(6)

Ваш ответ на вопрос