`
tianlijia202
  • 浏览: 78073 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

PRO*C调用procedure

    博客分类:
  • sql
sql 
阅读更多
文章转自: http://www.oraclefans.cn/forum/showtopic.jsp?rootid=410

在PRO*C中调用存储过程和函数
在PRO*C中可以在一个嵌入式PL/SQL块中调用一个存储过程或函数。以下通过例子来说明调用的方法。比如说目前有以下几个存储过程和函数:

 

l        procedure1() :没有参数的存储过程

l        procedure2 (param1 number, param2 varchar2):有2个参数的存储过程

l        function1() return number  :没有参数的函数

l        function2(param1 number) return number:有一个参数的函数

调用PROCEDURE1的嵌入式PL/SQL语法为:

EXEC SQL EXECUTE 

  BEGIN 

    procedure1; 

  END; 

END-EXEC; 

调用PROCEDURE2的嵌入式PL/SQL语法为: 

int hostvar1;

char hostvar2(20);



EXEC SQL EXECUTE 

  BEGIN 

/* hostvar1和hostvar2是两个在C语言中定义的宿主变量 */ 

    procedure2(:hostvar1, :hostvar2);  

  END; 

END-EXEC; 

调用FUNCTION1的语法是:

int hostvar; 

EXEC SQL EXECUTE 

  BEGIN 

    :hostvar:= function1; 

  END; 

END-EXEC; 

调用FUNCTION2的语法:

int hostvar,returnvar; 

EXEC SQL EXECUTE 

  BEGIN 

    :returnvar := function2(:hostvar); 

  END; 

END-EXEC;
分享到:
评论

相关推荐

    linux下c/c++连oracle数据库技术pro*c

    Pro*C是Oracle公司提供的一种预编译器,它允许C或C++程序直接调用PL/SQL代码,极大地简化了数据库操作。本篇文章将详细探讨Linux下使用C/C++和Pro*C连接Oracle数据库的技术细节。 1. **Pro*C介绍**: Pro*C是...

    proc经典教程(tuxdo proc 学习手册)

    Oracle Pro*C,全称为“Procedure C”,是Oracle公司提供的一种预编译器,它允许程序员在C或C++程序中嵌入SQL语句,从而结合了结构化编程语言的强大功能和数据库操作的高效性。本教程将深入探讨Pro*C的基本概念、...

    PROC程序设计和ORACLE调用接口

    1. **Oracle调用接口(OCI)**:Oracle Call Interface (OCI) 是Oracle提供的一种C语言编程接口,允许开发者直接在C或C++程序中访问和操纵Oracle数据库。通过OCI,程序员可以实现数据的查询、插入、更新和删除,以及...

    oracle学习笔记+代码

    - 连接管理:掌握连接Oracle数据库的方法,如使用 DriverManager 和 Connection 在Java中建立连接,或在C/C++中使用Pro*C/C++的预编译器特性。 5. 实践和代码示例 通过实践是掌握Oracle技术的最佳方式。你可以尝试...

    ARM实验报告汇编调用C语言1

    实验报告主要涉及了在ARM架构下,如何使用汇编语言编写程序并调用C语言函数进行运算,以及在Embest IDE Pro 2004集成开发环境中进行程序的编译、调试和下载。实验的目标是理解处理器启动过程,学会使用Embest IDE...

    SQL Server 存储过程与实例

    C) **减少网络流量**:当多个SQL语句组合为一个存储过程时,客户端只需发送存储过程调用,而非所有的SQL语句,降低了网络传输的数据量,减轻了网络负载。 D) **安全性**:通过权限管理,系统管理员可以限制对存储...

    Idl入门(一)文件类型

    程序文件通常以`.pro`扩展名结尾,并且可以使用`PROCEDURE`关键字来定义。 **调用程序文件:** ```idl IDL>.COMPILE filename IDL>filename ``` 这里`filename`是程序文件的名称。 ##### 2.5 函数文件 函数文件...

    jdbc调用mysql存储过程实现代码

    create procedure add_pro(a int, b int, out sum int) begin set sum = a * b; end; // delimiter ; ``` 2. **使用JDBC调用存储过程** 在Java中,我们需要使用`CallableStatement`接口来调用存储过程。首先...

    SQL Server 存储过程

    存储过程(Procedure)是预先编写的、存储在数据库中的SQL语句集合,用户可以通过调用存储过程的名字并提供必要的参数来执行它。存储过程可以包含复杂的逻辑控制语句和数据操纵语句,支持输入参数、输出参数、返回...

    SQL 存储过程 procedure 讲解+代码实例

    文章目录1. 存储过程和函数在实际项目中的使用2. 存储过程与函数的比较2.1. 共同点2.2. 不同点3. 变量的定义和使用3.1.... 调用存储过程 call4.4. 查看存储过程4.4.1. 查看存储过程的状态4.4.2. 查看存储过程的

    oracle数据库实验代码

    **解释**:调用`pro_1`存储过程,并遍历更新后的`s`表,打印每个供应商的编号(`sno`)和供应零件总数(`sqty`)。 ##### 2. 定义、调用参数存储过程:查询返回指定供应商的供应零件总数量 ```sql CREATE OR REPLACE ...

    Oracle数据库存储过程技术文档.doc

    4.1.2 Pro*c预编译环境 37 4.2 存储过程调试方法 38 4.2.1 SQL*PLUS环境中显示错误 38 4.2.2 插入测试表调试存储过程 38 4.2.3 DBMS_OUTPUT系统内置包 39 附录一 sql*plus工具 40 附录1.1 sql*plus启动和关闭 41 ...

    PLSQL

    Oracle提供了多种与数据库交互的编程接口,如Pro*C/C++、ODBC、JDBC、SQLJ和OCI。每种接口有其适用场景和优缺点,例如,PL/SQL适合于在数据库服务器端执行大量数据处理任务,而JDBC更适合于Java应用程序与数据库的...

    JAVA存储过程详解

    在给定的部分内容中,展示了一个简单的Java程序通过`CallableStatement`接口来调用一个名为`C_TESTSQL_PROC`的存储过程。这个过程接收四个输入参数和一个输出参数,并返回查询结果。 ```java try{ con=...

    BBSC PL-SQL 编程规范

    - **过程(Procedure)**:对象描述+`_pro` 或者仅使用对象描述。例如:`add_new_order_pro` 或 `add_new_order`。这同样适用于包内部定义的过程。 - **函数(Function)**:对象描述+`_fun` 或者仅使用对象描述。例如...

    codesite_DELPHI插件

    6. **性能分析**:可以记录函数调用的耗时,帮助分析性能瓶颈。 **总结** codesite DELPHI插件是Delphi开发中的一个强大辅助工具,它简化了调试过程,提高了代码质量。无论你是初学者还是经验丰富的开发者,...

    php mysql procedure实现获取多个结果集的方法【基于thinkPHP】

    $db = new mysqli(C("DB_HOST"), C("DB_USER"), C("DB_PWD"), C("DB_NAME"), C("DB_PORT")); // 检查连接是否成功 if (mysqli_connect_errno()) { throw_exception(mysqli_connect_error()); } // 构建调用...

    数据库的存储过程的建立

    通过调用存储过程,可以简化复杂的业务逻辑处理,并提高应用程序的执行效率。本文将详细介绍两个与数据库备份与恢复相关的存储过程:`sp_BackupDB`(备份数据库)和`sp_RestoreDb`(还原数据库)。 #### 一、`sp_...

    Oracle ProC 程序开发

    ProC的全称是"Procedure C",它将C/C++语言的高效性和Oracle数据库的特性相结合,为开发高性能的数据库应用提供了可能。 Oracle ProC的主要优势在于它可以直接嵌入PL/SQL代码,这样就能充分利用Oracle数据库的存储...

Global site tag (gtag.js) - Google Analytics