CLOB 변수를 다시 사용하려면 새 값으로 다시 초기화해야합니까, 아니면 freetemporary 함수를 사용해야합니까? 이 작업을 수행하는 다른 방법 (최선의 방법)이 있습니까?Oracle에서 CLOB 다시 사용
DECLARE
message CLOB;
BEGIN
message := 'The quick brown fox jumps over the lazy dog.';
dbms_output.put_line(message);
message := 'Test';
dbms_output.put_line(message);
END;
또는
DECLARE
message CLOB;
BEGIN
message := 'The quick brown fox jumps over the lazy dog.';
dbms_output.put_line(message);
dbms_lob.freetemporary(message);
message := 'Test';
dbms_output.put_line(message);
END;
감사합니다. 그래도 전세계 CLOB는 어떻습니까? DBMS_LOB.FREETEMPORARY가 CLOB을 NULL에 할당하고 있습니까? – superigno
@superigno 설명서에서 불분명합니다. DBMS_LOB.FREETEMPORARY()는 모든 메모리를 해제 할 수 있지만 NULL을 할당하면 메모리가 NULL 값이고 다른 값은 아니지만 대다수를 릴리스 할 수 있음을 알 수 있어야합니다. 이전에는 텍스트 용으로 할당 된 메모리)를 사용하지 않고 내부 작업에 액세스하지 않아도됩니다. – MT0