`
lc90
  • 浏览: 70497 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

集智数据平台里报表如何调用oracle数据库存储过程

阅读更多

数据集的数据来自存储过程。sql语句执行的时候要先编译,然后执行。存储过程就是编译好了的一些sql语句。应用程序需要用的时候直接调用就可以了,所以效率比较高。存储过程可以用流控制语句编写,有很强的灵活性,可以完成复杂的判断和复杂的运算。存储过程可以返回结果集,可以返回参数,也可以同时返回结果集和参数。

 

 

 

存储过程的参数分为输入参数和输出参数两种。输入参数是存储过程执行的条件参数。输出参数类似于返回值,但是输出参数具有两个重要的优势:可以使用输出参数从存储过程传递出VarCharIntMoney或任何其他数据类型的值,而返回值则只能返回整数。输出参数的另一个优势就是在一个存储过程中可以有多个输出参数,一个存储过程可以包含1024个参数(其中包括输入和输出参数),但是只能包含一个返回值。

 

 

 

不论是程序开发者调用存储过程,还是利用集智数据平台报表系统在调用过程中,其中以Oracle的存储过程较为特殊,因为oracle数据库对于存储过程的输出参数有一定要求,需要设置为游标类型,下面就举个例子:

 

存储过程写法:

 

CREATE OR REPLACE PACKAGE TYPES AS
   TYPE RQ_REF_CURSOR IS REF CURSOR;
   — procedure getData( V_TEMP OUT TYPES.RQ_REF_CURSOR);
END;

 


CREATE OR REPLACE PROCEDURE RQ_TEST_CUR
(
 V_TEMP OUT TYPES.RQ_REF_CURSOR,
 PID IN VARCHAR
)
AS
BEGIN
 OPEN V_TEMP FOR SELECT NAME FROM TEST WHERE ID = PID;
END RQ_TEST_CUR;

 


– Create table
create table TEST
(
  ID   VARCHAR2(10) not null,
  NAME VARCHAR2(10)
)
tablespace USERS
  pctfree 10
  initrans 1
  maxtrans 255
  storage
  (
    initial 64K
    minextents 1
    maxextents unlimited
  );
– Create/Recreate primary, unique and foreign key constraints
alter table TEST
  add constraint TEST_PK unique (ID)
  using index
  tablespace USERS
  pctfree 10
  initrans 2
  maxtrans 255
  storage
  (
    initial 64K
    minextents 1
    maxextents unlimited
  );

 

在报表中数据集的设置:

 

 

数据集中参数的设置:

报表参数的设置:


 

报表模版设计:

 


 

需要注意的是,当在单元格中用call函数调用存储过程时,执行存储过程,返回结果数据集合,只能返回单列数据,如果存储过程返回多个字段,则返回第一个字段的结果值。

 

 

 

更多了解各种复杂问题的处理,可以参考:数据获取从多个不同的业务系统中抽取和采集数据

分享到:
评论

相关推荐

    润乾报表调用oracle存储过程案例说明

    在实际的业务场景中,有时我们需要调用数据库中的存储过程来获取或处理数据,本篇将详细介绍如何在润乾报表中调用Oracle存储过程。 首先,我们要在Oracle数据库中创建存储过程。以下是一个简单的存储过程示例,名为...

    帆软报表Oracle存储过程解决storeParameter1参数试用插件

    总结起来,"帆软报表Oracle存储过程解决storeParameter1参数试用插件"主要是针对在调用无参数Oracle存储过程时出现的异常问题提供的一种解决方案。通过安装并配置这个插件,用户可以顺利地在帆软报表中调用不包含...

    调用Oracle数据库中的存储过程需要两步走

    在Oracle数据库中,存储过程是一种预编译的SQL和PL/SQL代码集合,它们可以执行复杂的业务逻辑并提高性能。调用Oracle存储过程通常涉及两个主要步骤:定义存储过程和调用存储过程。 **第一步,Oracle定义存储过程** ...

    水晶报表连接oracle存储过程实例

    本文将详细介绍如何使用水晶报表连接Oracle存储过程实例,从而实现数据报表的自动化生成。我们将从创建 Oracle 存储过程开始,接着指导读者如何在水晶报表中应用该存储过程。 一、创建 Oracle 存储过程 首先,需要...

    用VFP6.0技术调用ORACLE数据库.pdf

    在调用Oracle数据库的过程中,VFP6.0能够利用其关系型数据库操作语言的特性,将中间统计基础数据存储在数据表中,这在处理涉及多个表的复杂统计报表时具有明显优势。 根据文档,VFP6.0可以有效地调用Oracle数据库中...

    易语言连接ORACLE数据库查询报表

    在易语言中连接ORACLE数据库并进行查询报表是常见的操作,这对于数据管理和分析至关重要。ORACLE数据库作为全球知名的大型关系型数据库管理系统,广泛应用于企业和组织的数据存储与管理。 首先,你需要了解如何在...

    delphi中调用oracle的存储过程.doc

    在 Delphi 中调用 Oracle 存储过程是数据库应用程序开发中的常见操作,特别是在报表解决方案中。Oracle 存储过程能够封装复杂的 SQL 语句和业务逻辑,提高代码的可维护性和执行效率。以下是如何在 Delphi 中使用 ...

    Oracle数据库使用指南

    Oracle数据库是全球最广泛使用的商业关系型数据库管理系统之一,尤其在企业级应用中占据主导地位。本指南将针对初学者,详细介绍Oracle数据库的基础知识、安装与配置,以及一些常用的操作和管理技巧。 **1. Oracle...

    Oracle数据库课程大作业.pdf

    Oracle数据库是一种广泛应用于企业和组织的大型关系型数据库管理系统,它提供了高效的数据存储、管理和查询功能。在Oracle数据库课程中,学生们通常会被要求掌握一系列基础知识,包括数据库的逻辑存储结构、服务端口...

    oracle 定时任务,使用存储过程更新数据

    Oracle数据库系统提供了强大的定时任务管理功能,这在企业级应用中极为重要,因为它们能够按照预设的时间间隔执行特定的任务,比如数据更新、备份、报表生成等。在本主题中,我们将深入探讨如何利用Oracle的存储过程...

    oracle变化数据捕获

    对于大型数据库如Oracle来说,CDC的应用不仅能够提高数据处理效率,还能支持数据同步、数据仓库构建等多种应用场景。 #### 二、Oracle CDC 的基本原理 Oracle CDC 是一种用于捕捉数据库表中数据变更的技术,它能够...

    利用ORACLE物化视图建立报表数据库.pdf

    报表数据库是指独立于生产数据库的数据库,用于存储和管理报表数据。通过建立报表数据库,可以实现工作负荷的隔离,满足两种业务处理的需求,并为过渡到数据仓库打下基础。 第一,报告数据库的必要性。随着用户对...

    数据库元数据资料,关于oracle的

    在Oracle数据库中,这些信息存储在数据字典中,可以通过数据库元数据API来访问和查询。 在Java编程中,我们可以使用JDBC(Java Database Connectivity)的`DatabaseMetaData`接口来获取数据库的元数据。这个接口...

    Excel通过VBA连接Oracle数据库

    在Excel中通过Visual Basic for Applications (VBA) 连接Oracle数据库是一种强大的自动化工具,能够让你轻松地从大型数据库中提取、处理和分析数据。VBA是Excel内置的编程环境,允许用户创建自定义功能和宏,以实现...

    Oracle数据库经典教程

    Oracle数据库采用SQL作为其查询语言,支持分布式数据库、实时事务处理以及复杂的报表和数据分析。Oracle数据库分为多个版本,如Oracle Standard Edition和Enterprise Edition,以满足不同规模和需求的企业。 **...

    Oracle 数据库连接工具

    Oracle 数据库连接工具是用于与Oracle数据库进行交互的软件应用,它使得数据库管理员、开发人员以及数据分析师能够方便地管理、查询和操作Oracle数据库系统。Oracle数据库是全球广泛使用的大型关系型数据库管理系统...

    Oracle数据库表结构导出工具Excel

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统,用于存储、管理和检索复杂的数据。在日常的数据库管理工作中,有时我们需要将数据库的表结构导出到其他格式,如Excel,以便进行数据分析、报表制作或共享给...

    excel导出数据到oracle数据库

    本教程将深入探讨如何将Excel数据导出并导入到Oracle数据库中,这对于数据分析、报表制作以及数据迁移等场景非常有用。以下是对这个主题的详细阐述: 一、Excel与Oracle数据库简介 Excel是一款由Microsoft开发的...

    JSP+Oracle数据库组建动态网站经典实例.

    3. “第8章 新闻发布系统”可能包含新闻的发布、编辑、分类和搜索等功能,展示了如何利用JSP实现动态内容管理和用户友好的界面展示,同时利用Oracle数据库存储和检索大量文本信息。 4. “第4章论坛系统”是社交网络...

Global site tag (gtag.js) - Google Analytics