在Oracle/2000中调用Windows API函数
2007-05-12 12:25:05 来源:WEB开发网OracleDeveloper/2000是Oracle的微机开发工具,由于它与Oracle数据库的紧密连接,比用PowerBuilder或其它高级语言采用ODBC与Oracle的连接享有得天独厚的优点,越来越在Windows95和WindowsNT平台上得到广泛应用,笔者在用其进行程序设计时感到,既然是在Windows平台上开发程序,如果能在其中应用一些WindowsAPI函数,将使Developer/2000有如虎添翼的感觉,可以大大弥补它与底层操作系统的联系能力差、控制实时硬件设备功能差的缺点,开发出集成性更好的应用程序。
所有用第三方语言编写的子程序对Developer/2000都称为外部函数,WindowsAPI函数也是外部函数。这些外部函数必须包含在一个动态库中。例如WINDOWS操作系统下的动态链接库或UNIX系统下的共享库等。Developer/2000通过为每一个外部函数产生一个PL/SQL接口,它使用PL/SQL的语法,在程序中调用这一接口程序就可以激活这一外部函数。
对一个外部函数产生一个PL/SQL接口,需要用到内建软件包ORA-FFI,它包含一些PL/SQL的子程序用来对外部函数生成PL/SQL接口,实际操作时可以用ProcedureBuilder产生一个程序库,在程序库中建立一个程序包(Package),在这个包中实现对外部函数建立连接。下面介绍这一过程的具体步骤:
1.初始化外部函数
就是说明包含外部函数的动态链接库的位置,并从中分离出外部函数的原型,并将外部函数中主语言的数据类型和PL/SQL数据类型做一一对应的匹配。这是在包体(PackageBody)中进行的。具体分以下几步:
(1)用OQA_FFI.LOAD_LIBRARY得到包含外部函数的动态链接库的库柄,此时需提供动态链接库的名字和位置。
(2)用ORA_FFI.REGISTER_FUNCTION得到外部函数的函数柄,这时需提供动态链接库的库柄和外部函数名。
- ››oracle 恢复误删除的表和误更新的表
- ››Windows 8.1教你如何清理电脑c盘
- ››Oracle分页查询排序数据重复问题
- ››Oracle创建dblink报错:ORA-01017、ORA-02063解决
- ››Windows 8中将开始菜单(metro界面)创建关机及重启...
- ››Oracle 提高SQL执行效率的方法
- ››Windows 7系统的时钟和计算器
- ››Oracle 动态查询,EXECUTE IMMEDIATE select into...
- ››Windows 7系统的电源设置功能
- ››Windows7自动还原卡功能使用
- ››Windows7操作系统改半透明窗口颜色
- ››Windows7系统下有线网络优先级设置
更多精彩
赞助商链接