2013-09-26 2 views
1

나는 절차문자열을 clob으로 변환하는 방법?

PROCEDURE test_proc (text IN Clob) as 
Begin 
    insert into table_name values(SYSDATE,xmltype.createxml(text)); 
end ; 

하고 난 실행

begin 
    test_proc('.....text...'); 
end; 

텍스트의 길이 KB

erorr 64.8입니다 : PLS-00172 : 만약, 문자도

긴하지만 문자열 Value/Expresion (SQL Navigator 6.7.0 Relase)에 텍스트를 삽입하고 프로 시저를 실행합니다. -> PL/SQL 블록 실행

+0

테이블의 작성 스크립트는 무엇입니까? CREATE TABLE table_name (DATE, content XMLTYPE 일 때) 테이블로 코드 실행하기'ORA-31011 : XML 파싱에 실패했습니다 .'는 정상입니다. – mavroprovato

+0

table_name 테이블 ( date_rep 날짜 save_rep의 XMLTYPE) OBJECT RELATIONAL XMLSCHEMA AS XMLTYPE save_rep STORE」name_schema.xsd " ELEMENT"name_element "를 생성; 여기서 name_schema.xsd는 DBMS_XMLSCHEMA입니다. registerSchema –

+0

최대 varchar2는 32K입니다. –

답변

2

문제는 변환과 관련이 없으며 문자열 리터럴에 문제가 있습니다. Oracle SQL 구문 분석기가 처리하기에는 너무 큽니다.

파일에서 CLOB을로드 할 수 있습니까?

+0

그러나 SQL Navigator 6.7.0에 텍스트를 삽입하면 프로 시저 실행 -> PL/SQL 블록 실행 –