DBMS_PIPE的使用

DBMS_PIPE包:、
创建一个发消息的过程:
create or replace procedure send_message(
pipename varchar2,message varchar2)
is
flag int;
begin
flag:=dbms_pipe.create_pipe(pipename);
if flag=0 then
dbms_pipe.pack_message(message);
flag:=dbms_pipe.send_message(pipename);
end if;
end;
/
再创建一个接收消息的包
create or replace procedure receive_message(
pipename varchar2,message out varchar2)
is
flag int;
begin
flag:=dbms_pipe.receive_message(pipename);
if flag=0 then
dbms_pipe.unpack_message(message);
flag:=dbms_pipe.remove_pipe(pipename);
end if;
end;
/


在一个会话中执行:
exec send_message('pipe','I send message')

在另一会话中执行:
var message varchar2(200)
exec receive_message('pipe',:message)
print message

你可能感兴趣的:(pip)