zoukankan      html  css  js  c++  java
  • Oracle中返回多个结果集的处理<转>

    Oracle 不支持批量查询,因此无法从一个命令返回多个结果集。使用存储过程时,返回多个结果集类似于返回单个结果集;必须使用 REF CURSOR 输出参数。要返回多个结果集,请使用多个 REF CURSOR 输出参数。

    以下是返回两个结果集(全部 EMPLOYEES 和 JOBS 记录)的包规范:

    CREATE OR new PACKAGE SELECT_EMPLOYEES_JOBS AS
    TYPE T_CURSOR IS REF CURSOR;
    PROCEDURE GetEmployeesAndJobs (
    cur_Employees OUT T_CURSOR,
    cur_Jobs OUT T_CURSOR
    );
    END SELECT_EMPLOYEES_JOBS;

    包正文如下所示:

    CREATE OR new PACKAGE BODY SELECT_EMPLOYEES_JOBS AS
    PROCEDURE GetEmployeesAndJobs
    (
    cur_Employees OUT T_CURSOR,
    cur_Jobs OUT T_CURSOR
    )
    IS
    BEGIN
    -- return all EMPLOYEES records
    OPEN cur_Employees FOR
    SELECT * FROM Employees;

    return all JOBS records
    OPEN cur_Jobs FOR
    SELECT * FROM Jobs;
    END GetEmployeesAndJobs;
    END SELECT_EMPLOYEES_JOBS;

  • 相关阅读:
    SET TRANSACTION
    SET SESSION AUTHORIZATION
    SET CONSTRAINTS
    SET
    services
    send, sendto, sendmsg
    并列句分析
    cURL 学习笔记与总结(3)模拟登录博客园并下载个人随笔首页
    SQLServer2019安装教程
    Java实现 LeetCode 85 最大矩形
  • 原文地址:https://www.cnblogs.com/kingwangzhen/p/1788228.html
Copyright © 2011-2022 走看看