ORACLE呼叫DLL的例子

2021-04-02 10:59:18 字數 1282 閱讀 8950

注:以下程式在delphi7+oracle9i中測試通過

1、首先用delphi編制乙個dll程式,當然用vb,vc其它語言也可以,

本人最近常用delphi,所以以下dll採用delphi程式編制:

//project1.dpr工程檔案

library project1;

uses

sysutils,

classes,

unit1 in 'unit1.pas';

exports

dlltest;

begin

end.

///unit1.pas介面函式實現檔案

unit unit1;

inte***ce

function dlltest(a,b:double): double; cdecl; //介面函式

implementation

function dlltest(a,b:double): double; cdecl; //介面函式

begin

result:=a*b;

end;

end.

2、將編譯生成的project1.dll 拷貝至$oracle_home/bin路徑下,本人$oracle_home=c://oracle//ora92

所以將project1.dll拷貝至c://oracle//ora92//bin//路徑。

3、oracle 資料庫中增加乙個library 名字為 "mylib"

create or replace library mylib

as 'c://oracle//ora92//bin//project1.dll';

4、oracle 資料庫中增加乙個function 名字為 "mytest1"

create or replace function mytest1(a double precision,b double precision) return double precision as

language c name "dlltest"

library mylib

parameters (a double,b double,

return double );

5、測試一下

select mytest1(3.51,8.2) from dual;

------------返回28.782

6、到此乙個簡單的例子完成,其實這是乙個最簡單的例子,實際應用中需要根據需求去做,

本人做這個例子只是給各位網友開路,實際應用還需參考oracle幫助文件。

乙個 ORACLE 呼叫 DLL 的例子

注 以下程式在delphi7 oracle9i中測試通過 1 首先用delphi編制乙個dll程式,當然用vb,vc其它語言也可以,本人最近常用delphi,所以以下dll採用delphi程式編制 工程檔案 library project1 uses sysutils,classes,unit1 i...

C 編寫 呼叫 dll 簡單例子

c 建立dll 1.建立win32控制台程式,選擇dll 2.新增標頭檔案 標頭檔案中定義巨集 如下 ifdef dynamiclibrary exports 該dll的定義巨集工程屬性 c c preprocessor define dll def declspec dllexport 匯出 el...

Vc編寫和呼叫Dll的簡單例子

用visual sudio 6.0新建乙個工程,工程的型別選擇win32 dynamic link library.工程名任意 其他所有選項取預設 新建乙個cpp檔案,如下 錄,並且裡面有乙個exe檔案.這裡我們的工程型別是win32 dynamic link library,在編譯鏈結以後,我們期...