云数据库 GaussDB-DBE_LOB:示例

时间:2025-02-12 15:08:26

示例

 1 2 3 4 5 6 7 8 91011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
--获取字符串的长度SELECT DBE_LOB.GET_LENGTH('12345678'); get_length ------------          8(1 row)DECLAREmyraw  RAW(100);amount INTEGER :=2;buffer INTEGER :=1;beginDBE_LOB.READ('123456789012345',amount,buffer,myraw);dbe_output.print_line(myraw);end;/0123ANONYMOUS BLOCK EXECUTECREATE TABLE blob_Table (t1 blob);CREATE TABLE blob_Table_bak (t2 blob);INSERT INTO blob_Table VALUES('abcdef');INSERT INTO blob_Table_bak VALUES('22222');DECLAREstr 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;BEGINsource := dbe_raw.cast_from_varchar2_to_raw(str);amount := dbe_raw.get_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;DBE_LOB.WRITE(dest, amount, 1, source);DBE_LOB.WRITE_APPEND(dest, amount, source);DBE_LOB.ERASE(dest, a, 1);DBE_OUTPUT.PRINT_LINE(a);DBE_LOB.COPY(copyto, dest, amount, 10, 1);perform DBE_LOB.CLOSE(dest);RETURN;END;/--删除表DROP TABLE blob_Table;DROP TABLEDROP TABLE blob_Table_bak;DROP TABLE
support.huaweicloud.com/centralized-devg-v2-gaussdb/gaussdb_42_0599.html