zoukankan      html  css  js  c++  java
  • Oralce PL/SQL 调用C

    1.要把C写成扩展的形式 ex.c文件

    int __declspec(dllexport) sum(int a,int b)
    {
    	return a+b;
    }
    

    2.把C代码编译成动态库(*.dll 或 *.so)

    C:>gcc -O  -shared -o ex.dll ex.c

    3.把 ex.dll 拷贝到数据库的bin目录 D:app11.1.0db_1BIN

    D:app11.1.0db_1为我的Oracle 安装目录

    4.连接动态库,用SYS帐号登录系统(此处为演示,所以直接用SYS登录,其他普通帐号可能权限有问题)

    create or replace library MYLIB as 'D:app11.1.0db_1BINex.dll';
    
    create or replace
    function my_sum(l_a in binary_integer,l_b in binary_integer) return binary_integer as 
    language C  name "sum" library MYLIB 
    parameters(l_a,l_b);
    

    5.使用

    select my_sum(120,2) from dual
    

     执行结果如下

    MY_SUM(120,2)
    ----------------------
    122

    1 rows selected

  • 相关阅读:
    <>跟!=
    exists查询中子表可以是
    in 与 = 的区别
    F查询和Q查询
    Django ORM常用字段和参数
    Django模板系统
    Djang视图层
    Django路由层
    ASP.NET前端语法应用
    WebConfig加密解密
  • 原文地址:https://www.cnblogs.com/ser0632/p/4921105.html
Copyright © 2011-2022 走看看