如何在 oracle 中 调用 外部的程序

如何在 oracle 中 调用 外部的程序,第1张

利用TCP实现数据库与外部程序通讯者信,让数据库服务器通知一个守护程序去执行程序。

set serveroutput on size 100000

DECLARE

c utl_tcp.connection -- TCP/IP connection to the Web server

i number

j number

BEGIN

c := utl_tcp.open_connection('10.18.1.11', 51000) -- open connection

begin

loop

i := utl_tcp.available(c)

exit when i<=0

dbms_output.put_line('首族轮READ='||To_Char(i))

-- while i>0 loop

dbms_output.put(utl_tcp.get_text(c,i)) -- read result

--i :=i-1

-- end loop

end loop

exception

when others then null

end

dbms_output.put_line('')

i := utl_tcp.write_line(c, 'HELLO WORLD')

dbms_output.put_line('WRITE='||To_Char(i))

begin

j := 0

loop

i := utl_tcp.available(c)

if (i=0) then

j := j+1

if (j>=50) then

exit

else

for i in 0..1000 loop

null

end loop

end if

else

dbms_output.put_line('穗渣READ='||To_Char(i))

dbms_output.put(utl_tcp.get_text(c,i)) -- read result

end if

end loop

exception

when others then null

end

dbms_output.put_line('')

utl_tcp.close_connection(c)

end

外部程序可以自己一直处于运行状态,定时扫描文件,一旦发现文件有数据进来,就开始进行 *** 作,不用从数据库进行触发。

如果非要从数燃银据库触发,这个程序又皮前宴悔祥部署在数据库服务器,可写一个java存储过程,直接调用服务器上的东东。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12368696.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存