日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle 开启utl_tcp,关于Oracle的UTL_TCP

發(fā)布時間:2023/12/20 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle 开启utl_tcp,关于Oracle的UTL_TCP 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

(在Oracle9.2下,link:http://download.oracle.com/docs/cd/B10501_01/appdev.920/a96612/u_tcp.htm#ARPLS075)

With the UTL_TCP package and its procedures and functions, PL/SQL applications can communicate with external TCP/IP-based servers using TCP/IP. Because many Internet application protocols are based on TCP/IP, this package is useful to PL/SQL applications that use Internet protocols and e-mail.

(通過使用UTL_TCP包和他的過程與函數(shù),PL/SQL程序能夠使用TCP/IP協(xié)議與其他的基于TCP/IP的服務(wù)器進(jìn)行通信。這個包對于使用網(wǎng)絡(luò)和email服務(wù)的PL/SQL程序非常有用,因為許多網(wǎng)絡(luò)服務(wù)程序協(xié)議都是基于TCP/IP協(xié)議的。)

Oracle的UTL_TCP包提供了一種額外的方法來主動與應(yīng)用程序來進(jìn)行通信。比如我們可以通過一個觸發(fā)器,當(dāng)某張表的數(shù)據(jù)被更改時,即時通知應(yīng)用程序基礎(chǔ)的通知應(yīng)用程序服務(wù),當(dāng)然,這個應(yīng)用程序服務(wù)需要開監(jiān)聽。寫了個小測試東西來測試了下UTL_TCP:

1)以下是一個PL/SQL過程,使用UTL_TCP包,與ip為xxx.xxx.xxx.xxx:1234進(jìn)行通信。只是簡單的發(fā)送"Result has changed":

1: CREATE OR REPLACE procedure USERID.P_SendNotice

2: IS

3: conn utl_tcp.connection;

4: ret_val pls_integer;

6: conn := utl_tcp.open_connection(remote_host => 'xxx.xxx.xxx.xxx',

7: remote_port => 1234,

8: charset => 'US7ASCII');

9:

10: ret_val:=utl_tcp.write_line(conn, 'Result has changed');

11: dbms_output.put_line(to_char(ret_val));

13: when utl_tcp.NETWORK_ERROR then

14: dbms_output.put_line('network error');

15: End;

2)在一張表上建個觸發(fā)器,以便對該表數(shù)據(jù)進(jìn)行更改時候,發(fā)送通知消息給外部服務(wù)器:

1: CREATE OR REPLACE TRIGGER USERID.noticesend_trg

3: ON USERID.TableName REFERENCING NEW AS NEW OLD AS OLD

5: P_SendNotice ();

6: END;

3)在應(yīng)用程序中,應(yīng)該監(jiān)聽我在上面包中所寫ip為xxx.xxx.xxx.xxx的1234端口,以完成對相應(yīng)消息的接收

至此,完成一個簡單的Oracle UTL_TCP的小應(yīng)用。當(dāng)表數(shù)據(jù)中發(fā)生改變的時候,通過觸發(fā)器來調(diào)用過程,發(fā)送通知給應(yīng)用服務(wù)器,應(yīng)用服務(wù)器再做相應(yīng)的相應(yīng)。

UTL_TCP的限制:The UTL_TCP package provides TCP/IP client-side access functionality in PL/SQL. The API provided in the package only allows connections to be initiated by the PL/SQL program.It does not allow the PL/SQL program to accept connections initiated outside the program.

總結(jié)

以上是生活随笔為你收集整理的oracle 开启utl_tcp,关于Oracle的UTL_TCP的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。