create or replace procedure p_test_clobInsert is v_content clob; i integer; begin v_content:='Number is :'; for i in 1..3000 loop v_content:=v_content||i||','; end loop; insert into test_clob values (1,v_content); commit; end p_test_clobInsert;
DECLARE v_bfile BFILE; v_clob CLOB; BEGIN INSERT INTO tab1 (col1) VALUES (empty_clob()) RETURN col1 INTO v_clob;
创建表: create table test(id number,text clob);创建存储过程: CREATE OR REPLACE PROCEDURE p_In_Clob(pId IN NUMBER,outVar IN VARCHAR2) IS text_Var CLOB; amount_Var NUMBER; offset_Var NUMBER; BEGIN INSERT INTO test VALUES(pId,empty_clob()); SELECT text INTO text_var FROM test WHERE id=pId; amount_var:=LENGTH(outVar); offset_var:=1; DBMS_LOB.WRITE(text_Var,amount_Var,offset_Var,outVar); COMMIT; END p_In_Clob;调用存储过程: begin p_In_Clob(1,'...'); end;
我是在把一堆html代码insert到表的时候出现问题的。
多谢!
v_content clob;
i integer;
begin
v_content:='Number is :';
for i in 1..3000 loop
v_content:=v_content||i||',';
end loop;
insert into test_clob values (1,v_content);
commit;
end p_test_clobInsert;
v_bfile BFILE;
v_clob CLOB;
BEGIN
INSERT INTO tab1 (col1)
VALUES (empty_clob())
RETURN col1 INTO v_clob;
v_bfile := BFILENAME('DOCUMENTS', 'x1.txt');
Dbms_Lob.Fileopen(v_bfile, Dbms_Lob.File_Readonly);
Dbms_Lob.Loadfromfile(v_clob, v_bfile, Dbms_Lob.Getlength(v_bfile));
Dbms_Lob.Fileclose(v_bfile);
COMMIT;
END;
create table test(id number,text clob);创建存储过程:
CREATE OR REPLACE PROCEDURE p_In_Clob(pId IN NUMBER,outVar IN VARCHAR2)
IS
text_Var CLOB;
amount_Var NUMBER;
offset_Var NUMBER;
BEGIN
INSERT INTO test VALUES(pId,empty_clob());
SELECT text INTO text_var FROM test
WHERE id=pId;
amount_var:=LENGTH(outVar);
offset_var:=1;
DBMS_LOB.WRITE(text_Var,amount_Var,offset_Var,outVar);
COMMIT;
END p_In_Clob;调用存储过程:
begin
p_In_Clob(1,'...');
end;