- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
在Oracle中使PLSQL操作COM对象
必要性
扩展后的PL/SQL语言已经集成了标准SQL,在效率和安全上非常适合设计Oracle数据库程序,但对于应用的某些功能,其它的程序设计语言比PL/SQL更适合,如:使用操作系统资源,C语言在计算和引用系统对象及使用设备上优于PL/SQL,而Java语言在网络上的应用优于PL/SQL。
如果在应用上要用到不适合用PL/SQL语言的话,这时就要使用其它语言进行编制,然后由PL/SQL作为外部例程进行调用。
在Oracle8之前的版本,PL/SQL和其它语言的唯一通信是借助于DBMS_PIPE和DBMS_ALERT包来实现,在使用之前必需建立一个OCI接口或预编译器编制的监护程序,使用比较复杂。外部例程的出现,只需在PL/SQL中建立一个函数映射到外部例程对应的函数,就像普通的PL/SQL函数使用一样,简化了使用过程。
基本原理
当引用外部C语言例程时,Oracle监听器将启动extproc进程,该进程将会动态地载入共享库(在Windows下称为动态链接库,即是DLL文件),进程起了一个缓冲的作用,当PL/SQL过程调用外部函数时,进程把命令发送到共享库,之后把结果返回给PL/SQL过程。
进程被调用后随着共享库的使用会话(session)而存在,如果调用完毕或者关闭数据库用户会话,extproc进程会自动关闭。
使用配置
在调用外部例程之前,必需进行如下设置:
·配置监听器。
·配置Net组件服务。
配置监听器,打开D:\oracle\ora92\network\admin\listener.ora 文件,修改文件参数。
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 其中有两部份参数对于使用外部例程是很重要的。
· ADDRESS_LIST ADDRESS PROTOCOL IPC KEY extproc1 设置基于IPC协议的外部例程
· SID_DESC SID_NAME PLSExtProc ORACLE_HOME D:\oracle\ora92 PROGRAM extproc 记录数据库的相关属性,SID_NAME在默认的情况下是PLSExtproc。
配置Net组件服务,打开D:\oracle\ora92\network\admin\tnsnames.ora文件,把如下内容保存在该文件里。
EXTPROC_CONNECTION_DATA DESCRIPTION ADDRESS_LIST ADDRESS PROTOCOL IPC KEY EXTPROC1 CONNECT_DATA SID PLSExtProc PRESENTATION RO 重要参数说明:
· ADDRESS PROTOCOL IPC KEY EXTPROC1 · CONNECT_DATA SID PLSExtProc PRESENTATION RO 两设置必需与listener.ora里的一致。
重启监听器,并测试服务是否可用。
停止监听器:lsnrctl stop
启动监听器:lsnrctl start
测试服务是否可用:
C:\ tnsping EXTPROC_CONNECTION_DATA
TNS Ping Utility for 32-bit Windows: Version 9.2.0.1.0 - Production on 07-4月 -2
005 16:57:00
Copyright c 1997 Oracle Corporation. All rights reserved. 已使用的参数文件: D:\oracle\ora92\network\admin\sqlnet.ora
已使用 TNSNAMES 适配器来解析别名
Attempting to contact DESCRIPTION ADDRESS_LIST ADDRESS PROTOCOL IPC K
您可能关注的文档
- 图像处理-Photshop CS_2.doc
- 图像处理在足球机器方面的应用.doc
- 图像处理软件Phooshop实训指导手册.doc
- 图式理论在英语阅读学中的应用.doc
- 图式理论在高中英语力教学中的运用.doc
- 图形图像的加工教与设计_彭敏.doc
- 图形推理120题参答案及解析.doc
- 图形推理专项习题10道(附答案).docx
- 图情课教案 图馆文献查检初识.doc
- 图示现场审计实施系(AO)安装.doc
- 《2025年养老社区适老化无障碍设施建设人才培养策略》.docx
- 《2025年新能源车环保内饰材料抗过敏与健康安全标准》.docx
- 《2025年充电桩网络发展:城际快充站运营成本控制与收益模式》.docx
- 2026国家管网集团高校毕业生招聘笔试模拟试题(浓缩500题)附参考答案详解(轻巧夺冠).docx
- 《2025年老年护理培训与护工收入水平提升研究》.docx
- 2025年检测机器人行业创新技术及市场应用报告.docx
- 2025年柬埔寨语培训机构教学品牌创新塑造报告.docx
- 2026国家管网集团高校毕业生招聘笔试模拟试题(浓缩500题)附参考答案详解(轻巧夺冠).docx
- 《2025年家用血氧仪产品差异化与健康管理设备行业趋势》.docx
- 2025年婚庆服务行业高端市场拓展策略研究报告.docx
最近下载
- 北斗卫星导航定位系统总结.doc VIP
- 如何制作标书22).pptx VIP
- 卧式单面多轴钻孔组合机床动力滑台的液压系统设计.doc VIP
- (高清版)DB32∕T 4659.2-2024 医院公共卫生工作规范 第2部分:疾控机构医防融合工作指南.pdf VIP
- 2025年中考语文作文猜押:《有一束光照亮我的世界》写作技巧课件.pptx VIP
- (高清版)DG∕TJ 08-2435-2023 市域铁路设计标准.pdf VIP
- Landmark钻井设计软件课件.pptx VIP
- 常见安全生产隐患辨识图册.pptx VIP
- 兰德马克(Landmark)钻井设计软件组成.pptx VIP
- 工程质量风险分级管控清单 .pdf VIP
原创力文档


文档评论(0)