关于Oracle调用外部的DLL问题!来者有分。100分送上

ljlln 2005-04-22 10:04:36
我想在我的某个表进行插入操作时,通知我的其他服务器程序。
在该表上建立触发器,进行指定的操作发生时调用我的dll。
操作步骤:
1、配置监听extlistener
a、增加一个IPC的监听,在监听位置选项中的键值输入“process"
b、在上面的下拉筐中选择其他服务:输入程序名=extproc
SID=ProID
主目录=e:\Oracle\Ora81
2、配置TNS:
a、在服务名中增加:Extpro_connection_Data
b、在SID输入ProID
c、在地址配置中输入:“process" (协议选择IPC)
3、保存设置
4、在cmd其他对IPC的监听服务
lsnrctl start extlistener
提示启动成功,ProID 具有一个服务程序
5、测试extpro_connection_Data 服务名 :
但是测试时弹出一个extproc应用程序错误,地址只读等一些违规访问的情况。什么原因???

6、在Oracle中增加调用dll的函数
Show()
7、在SQL/PLUS中调用Show(),提示 ORA-28575: 无法打开与外部过程代理程序的 RPC 连接

我那儿出的错误。请各位给号号脉》小弟在此谢过。
...全文
142 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
chanet 2005-04-22
  • 打赏
  • 举报
回复
以上是前提. :)

详情请看 emag.csdn.net oracle杂志(第四期)里的 <Oracle外部例程-pl/sql调用com对象>
chanet 2005-04-22
  • 打赏
  • 举报
回复
C:\>tnsping EXTPROC_CONNECTION_DATA <- 测试是否能通.

然后试一下:
D:\oracle\ora92\bin>extproc


Oracle Corporation --- 星期五 4月 22 2005 16:36:50.187

Heterogeneous Agent Release 9.2.0.1.0 - Production


D:\oracle\ora92\bin>
chanet 2005-04-22
  • 打赏
  • 举报
回复
1. 配置 监听:
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = chanet)(PORT = 1521))
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = extproc1))
)
)
)

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\ora92)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = ORADB)
(ORACLE_HOME = D:\oracle\ora92)
(SID_NAME = ORADB)
)
)

2. 配置服务名
oradb =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = chanet)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = oraDB)
)
)

EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)

17,082

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧