Я не совсем понимаю смысл функции dbms_lob.createtemporary(). Как:Что такое dbms_lob.createtemporary()?
DECLARE
myclob CLOB;
BEGIN
myclob := 'foo';
END;
не отличается от:
DECLARE
myclob CLOB;
BEGIN
dbms_lob.createtemporary(myclob, TRUE);
myclob := 'foo';
dbms_lob.freetemporary(myclob);
END;
Я предполагаю, что действия в между создавать и бесплатные звонки делают его актуальным, но я просто не понятно, каким образом.
Возможно, 'dbms_lob.freetemporary' освобождает блок памяти (который может быть достаточно большим), не дожидаясь перемены, выходит за пределы области видимости, поэтому вы можете более эффективно управлять использованием памяти. –