云服务器内容精选

  • 示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 --获取字符串的长度 SELECT DBMS_LOB.GETLENGTH('12345678'); DECLARE myraw RAW(100); amount INTEGER :=2; buffer INTEGER :=1; begin DBMS_LOB.READ('123456789012345',amount,buffer,myraw); dbms_output.put_line(myraw); end; / CREATE TABLE blob_Table (t1 blob) DISTRIBUTE BY REPLICATION; CREATE TABLE blob_Table_bak (t2 blob) DISTRIBUTE BY REPLICATION; INSERT INTO blob_Table VALUES('abcdef'); INSERT INTO blob_Table_bak VALUES('22222'); DECLARE str varchar2(100) := 'abcdef'; source raw(100); dest blob; copyto blob; amount int; PSV_SQL varchar2(100); PSV_SQL1 varchar2(100); a int :=1; len int; BEGIN source := utl_raw.cast_to_raw(str); amount := utl_raw.length(source); PSV_SQL :='select * from blob_Table for update'; PSV_SQL1 := 'select * from blob_Table_bak for update'; EXECUTE IMMEDIATE PSV_SQL into dest; EXECUTE IMMEDIATE PSV_SQL1 into copyto; DBMS_LOB.WRITE(dest, amount, 1, source); DBMS_LOB.WRITEAPPEND(dest, amount, source); DBMS_LOB.ERASE(dest, a, 1); DBMS_OUTPUT.PUT_LINE(a); DBMS_LOB.COPY(copyto, dest, amount, 10, 1); DBMS_LOB.CLOSE(dest); RETURN; END; / --删除表 DROP TABLE blob_Table; DROP TABLE blob_Table_bak;
  • 接口介绍 高级功能包DBMS_OUTPUT支持的所有接口请参见表1。 表1 DBMS_OUTPUT 接口名称 描述 DBMS_OUTPUT.PUT_LINE 输出指定的文本,文本长度不能超过32767字节。 DBMS_OUTPUT.PUT 将指定的文本输出到指定文本的前面,不添加换行符,文本长度不能超过32767字节。 DBMS_OUTPUT.ENABLE 设置输出缓冲区的大小。若不指定,缓冲区最大只能容纳20000字节,缓冲区最小可设置为2000字节,若设置小于2000字节将按2000字节处理。 DBMS_OUTPUT.PUT_LINE 存储过程PUT_LINE向消息缓冲区写入一行带有行结束符的文本。DBMS_OUTPUT.PUT_LINE函数原型为: 12 DBMS_OUTPUT.PUT_LINE (item IN VARCHAR2); 表2 DBMS_OUTPUT.PUT_LINE接口参数说明 参数 描述 item 写入消息缓冲区的文本。 DBMS_OUTPUT.PUT 存储过程PUT将指定的文本输出到指定文本的前面,不添加换行符。DBMS_OUTPUT.PUT函数原型为: 12 DBMS_OUTPUT.PUT (item IN VARCHAR2); 表3 DBMS_OUTPUT.PUT接口参数说明 参数 描述 item 写入指定文本前的文本。 DBMS_OUTPUT.ENABLE 存储过程ENABLE设置输出缓冲区的大小,如果不指定的话缓冲区最大只能容纳20000字节。DBMS_OUTPUT.ENABLE函数原型为: 12 DBMS_OUTPUT.ENABLE (buf IN INTEGER); 表4 DBMS_OUTPUT.ENABLE接口参数说明 参数 描述 buf 设置输出缓冲区的大小。