首页 > 其他分享 >unidac调用存储过程返回多个结果集

unidac调用存储过程返回多个结果集

时间:2024-05-25 21:11:25浏览次数:25  
标签:存储 调用 end sp db jo unidac pool

unidac调用存储过程返回多个结果集

1)创建一个sqlserver存储过程

CREATE PROCEDURE gettables
AS
BEGIN
    -- 第一个结果集
    SELECT * FROM tunit;
 
    -- 第二个结果集
    SELECT * FROM tgoods;
END

  2)中间件调用存储过程

procedure Tstoredproc.open(ctxt: Tcontext);
var
  db: tdb;
  pool: tdbpool;
  jo: tjsonobject;
  i: integer;
begin
  jo := tjsonobject.Create;
  try
    try
      pool := GetDBPool('1');
      db := pool.Lock;
      db.sp.Close;
      db.sp.UnPrepare;
      db.sp.Params.Clear;
      db.sp.StoredProcName := 'gettables';
      db.sp.Prepare;
      db.sp.execute;
      i := 1;
      repeat
        jo.Add('dataset' + i.ToString, db.sp.tojsonarray);
        inc(i);
      until not db.sp.OpenNext;
      ctxt.OutContent := jo.AsJSON;
    except
      on E: Exception do
      begin
        ctxt.OutContent := error(E.Message);
        WriteLog('api.storedproc.open()' + E.Message);
      end;
    end;
  finally
    pool.Unlock(db);
    jo.Free;
  end;
end;               

  3)客户端调用

 

标签:存储,调用,end,sp,db,jo,unidac,pool
From: https://www.cnblogs.com/hnxxcxg/p/18213006

相关文章

  • 用 Python 编写网络爬虫:从网页获取数据并存储到 Excel 文件
    在本篇博客中,我们将介绍如何使用Python编写一个简单的网络爬虫,用于从网页中提取数据,并将这些数据存储到Excel文件中。我们将使用Python中的一些库来实现这个功能,包括urllib.request、BeautifulSoup和openpyxl。1.网络爬虫的基本原理网络爬虫是一种程序,可以自动访问......
  • C语言初阶 数据在内存中的存储
    数据在内存中的存储在编程的世界里,数据是如何存储和管理的,是每一位开发者都必须了解的基础知识。特别是对于C语言这样的底层语言,理解数据在内存中的存储方式,对于写出高效、安全的代码至关重要。本文将带您深入了解C语言中数据在内存中的存储方式。1.整数存储对于整型来说......
  • Python中动态调用C#的dll动态链接库中方法
    在Python中调用C#的dll库_哔哩哔哩_bilibili 环境准备: 安装pythonnetpipinstallpythonnet 在Python中调用C#动态链接库(DLL),可以使用pythonnet库,它允许直接使用.NET的程序集。以下是一个示例,展示如何使用pythonnet调用C#动态链接库中的方法。【pythonnet详解】—......
  • Ceph存储池管理
    目录Ceph存储池1.Ceph的存储流程1.数据写入2.数据读取2.资源池的配置2.1资源池创建pgp是什么(PlacementGroupforPlacementpurpose)2.2绑定池类型关闭3.对象的管理3.1上传对象3.2查看对象3.3下载对象3.4删除对象3.5查询对象所在pg3.6限制资源池配额3.7测试配额3.......
  • kettle从入门到精通 第六十三课 ETL之kettle kettle调用python脚本的两种方法
    kettle中不能直接调用python脚本,可以通过shell脚本和http进行调用pyton服务。一、shell脚本调用python脚本1、下面是一段简单的无参python脚本importosdefmain():#在这里编写Python脚本的主要逻辑print("Hello,thisisaPythonscriptcalledbyshell!")i......
  • 全网讲的最详细的Docker镜像分层存储原理
    先说结论,容器镜像分层存储图示欢迎关注实验环境准备当前实验docker版本24.0.7如下,当前docker版本使用overlay2机制存储镜像Client:DockerEngine-CommunityVersion:24.0.7APIversion:1.43Goversion:go1.20.10Gitcommit:......
  • 整数和浮点数在内存中的存储
    前言嗨,我是firdawn,在本章中我们将介绍,整数和浮点数在内存中的存储,以及大小端字节序,下面是本章的思维导图,下面让我们开始今天的学习吧!一,整数在内存中的存储1.1原码,反码,补码的概念我们知道计算机底层储存的其实是0和1组成的二进制序列,当我们储存一个有符号整数时,那它的......
  • Star CCM+在电池热管理中SOC计算、充电Map调用、电池内阻调用的方法
     前言众所周知电池充电电流是随着电池温度与容量变化查表获得(形式见下表),其中电池的充电倍率(电流)是阶梯变化的,而内阻是线型变化的。因此为了仿真的准确定,需要在软件中实现数据的调用,计算电池的发热量。电池内阻/充电倍率表 一SOC计算SOC的估算方法有开路电......
  • MySQL InnoDB存储引擎
    一、存储引擎的简介MySQL5.7支持的存储引擎有InnoDB、MyISAM、Memory、Merge、Archive、Federated、CSV、BLACKHOLE等。1、InnoDB存储引擎从MySQL5.5版本之后,默认内置存储引擎是InnoDB,主要特点有:(1)灾难恢复性比较好;(2)支持事务。默认的事务隔离级别为可重复读,通过MVCC(并发版本控......
  • 玩转STM32-直接存储器DMA(详细-慢工出细活)
    文章目录一、DMA介绍1.1DMA简介1.2DMA结构二、DMA相关寄存器(了解)三、DMA的工作过程(掌握)四、DMA应用实例4.1DMA常用库函数4.2实例程序一、DMA介绍1.1DMA简介DMA用来提供外设与外设之间、外设与存储器之间、存储器与存储器之间的高速数据传输,无需CPU干预,数据可......