java.sql.SQLException: ORA-01691: Lob 段 GWTRAVEL.SYS_LOB0000104910C00003$$ 无法通过 1024 (在表空间 GWTRAVEL 中) 扩展
ORA-06512: 在 "GWTRAVEL.CALL_POST_WEB", line 49
ORA-29266: 已达到正文的末尾
存储过程如下:
create or replace procedure CALL_POST_WEB( requrl in varchar2 , reqbody in varchar2 , sessionId in INTEGER,resenv out clob,statuscode out NUMBER, newSessionId out INTEGER) IS
http_req UTL_HTTP.REQ;
http_Resp UTL_HTTP.RESP;
request_env VARCHAR2(32767);
l_Replyline VARCHAR2(32767);
http_url VARCHAR2(1000);
UUID VARCHAR2(32);
respText clob;
begin
request_env := reqbody;
http_url := requrl;
if sessionId is not null then
RESTORE_COOKIES(sessionId);
end if;
http_req:=Utl_Http.begin_request(http_url,'POST',UTL_HTTP.http_version_1_1);
Utl_Http.Set_Persistent_Conn_Support(http_req, TRUE);
--set header
UTL_HTTP.set_header(http_req, 'Accept', 'application/json;charset=UTF-8');
UTL_HTTP.set_header(http_req, 'Accept-Encoding', 'gzip, deflate');
UTL_HTTP.set_header(http_req, 'Accept-Language', 'zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3');
Utl_Http.set_header(http_req, 'Connection', 'keep-alive');
Utl_Http.Set_Header(http_req, 'Content-Length', Lengthb(request_env));
Utl_Http.set_header(http_req, 'Content-Type','application/json;charset=UTF-8');
Utl_Http.Set_Body_Charset(http_req, 'utf-8');
Utl_Http.Write_Line(http_req, request_env);
http_Resp := Utl_Http.Get_Response(http_req);
statuscode := http_Resp.status_code;
if sessionId is null then
newSessionId:=save_cookies();
end if;
-- dbms_output.put_line(statuscode);
begin
select sys_guid() into UUID from dual;
dbms_lob.createtemporary(respText,true);
loop
Utl_Http.read_text(http_Resp, l_Replyline,800);
dbms_lob.append(respText,to_clob(l_Replyline));
end loop;
end;
EXCEPTION
WHEN utl_http.end_of_body THEN
resenv:= UUID;
insert into DATA_RECV values(UUID,http_url,respText,sysdate);
commit;
Utl_Http.end_response(http_Resp);
UTL_TCP.CLOSE_ALL_CONNECTIONS();
when others then
statuscode := -99;
resenv := 'error!';
Utl_Http.end_response(http_Resp);
Utl_Http.end_request(http_req);
UTL_TCP.CLOSE_ALL_CONNECTIONS();
--dbms_output.put_line(statuscode);
--dbms_output.put_line(resenv);
raise;
end CALL_POST_WEB;
问题:
显示在insert into DATA_RECV values(UUID,http_url,respText,sysdate);报错
错误信息:
ORA-06512: 在 "GWTRAVEL.CALL_POST_WEB", line 49
ORA-29266: 已达到正文的末尾
求大神帮忙解决