首页 > 数据库 >Oracle 存储过程分页 + Sqlsugar调用

Oracle 存储过程分页 + Sqlsugar调用

时间:2024-11-08 21:57:08浏览次数:5  
标签:分页 -- SugarParameter number Oracle new page Sqlsugar size

一、Oracle 存储过程分页

 1 create PROCEDURE GetPatientVisitData(
 2     p_HospId IN VARCHAR2, -- 院区编码
 3     p_strDate IN VARCHAR2, -- 开始日期
 4     p_endDate IN VARCHAR2, -- 结束日期
 5     p_page_size IN NUMBER, -- 每页记录数
 6     p_page_number IN NUMBER, -- 当前页码
 7     p_result OUT SYS_REFCURSOR, -- 结果集
 8     p_total_count OUT NUMBER   -- 总记录数
 9 ) AS
10 BEGIN
11     -- 计算总记录数
12     SELECT COUNT(*)
13     INTO p_total_count
14     FROM (
15          SELECT * FROM 表名
16     );
17     -- 分页查询数据
18     OPEN p_result FOR
19     -- 你的查询语句
20     SELECT 字段1,字段2,ROW_NUMBER() OVER (ORDER BY 排序字段) AS rn FROM 表名 AS A
21     --分页
22     WHERE A.rn BETWEEN (p_page_number - 1) * p_page_size + 1 AND p_page_number * p_page_size ;
23 END GetPatientVisitData;
24 /
View Code

二、Sqlsugar 调用

 1 //设置参数
 2                 var parameters = new List<SugarParameter>
 3                 {
 4                     new SugarParameter("p_HospId", HospId),
 5                     new SugarParameter("p_strDate", strDate),
 6                     new SugarParameter("p_endDate", endDate),
 7                     new SugarParameter("p_page_size", pageSize),
 8                     new SugarParameter("p_page_number", page),
 9                     new SugarParameter("p_result", "")
10                         { IsRefCursor = true, Direction = System.Data.ParameterDirection.Output },
11                     new SugarParameter("p_total_count", 0)
12                         { Direction = System.Data.ParameterDirection.Output }
13                 };
14                 //执行存储过程
15                 var resultList = db.Ado.SqlQueryAsync<OutpatientReportStatistics>("BEGIN GetPatientVisitData(:p_HospId, :p_strDate, :p_endDate, :p_page_size, :p_page_number, :p_result, :p_total_count); END;", parameters).Result.ToList();
16                 //总行数
17                 var totalItem = Convert.ToInt32(parameters[6].Value);
View Code

 

标签:分页,--,SugarParameter,number,Oracle,new,page,Sqlsugar,size
From: https://www.cnblogs.com/lovelySteelPot/p/18536024

相关文章

  • 03 Oracle进程秘籍:深度解析Oracle后台进程体系
    文章目录Oracle进程秘籍:深度解析Oracle后台进程体系一、Oracle后台进程概览1.1DBWn(DatabaseWriterProcess)1.2LGWR(LogWriterProcess)1.3SMON(SystemMonitorProcess)1.4PMON(ProcessMonitorProcess)二、后台进程的监控与诊断2.1使用OracleEnterpriseManager(OE......
  • 04 深入 Oracle 并发世界:MVCC、锁、闩锁、事务隔离与并发性能优化的探索
    文章目录深入Oracle并发世界:MVCC、锁、闩锁、事务隔离与并发性能优化的探索一、多版本并发控制(MVCC)1.1理论解析1.2实践应用二、锁与闩锁机制2.1理论解析2.2实践应用三、事务隔离级别3.1理论解析3.2实践应用四、死锁预防与解决策略4.1理论解析4.2实践应用五......
  • Oracle OCP认证考试考点详解082系列15
    题记:本系列主要讲解OracleOCP认证考试考点(题目),适用于19C/21C,跟着学OCP考试必过。71.第71题:题目解析及答案:对于数据库,使用数据库配置助手(DBCA)可以执行以下哪两项任务?A.为新数据库配置非标准块大小。数据库配置助手(DBCA)可用于为新创建的数据库配置非标准块大小。在......
  • 【QOCI】【Oracle】qoci驱动编译
    文章目录前言一、安装QT、Oracle二、生成qsqloci.dll1.配置oci.pro2.修改qsqldriverbase.pri3.管理员身份运行x64NativeToolsCommandPromptforVS2022前言提示:qoci驱动配置很简单,参考网上失败,最后参照qt官网成功!一、安装QT、Oracle这里就不赘述了,其他教......
  • Vue3+antd实现分页功能
    vue中代码(在对应的地方添加)<a-paginationv-model:current="current":total="total"v-model:page-size="pageSize":showSizeChanger="true"......
  • SqlServer 分页学习
    在B站上看到一个分页视频,老师讲的挺好,记录下来。想看原视频的可以去B站--1.建立Students表CREATETABLEstudents(IDINTPRIMARYKEYIDENTITY(1,2),NAMENVARCHAR(50)NOTNULL,SEXCHAR(6)CHECK(SEXIN('Male','Female')));GO--2.插入30条数据INSERTINTO......
  • Oracle10g / oracle11g 安装过程中的常见错误解决办法-【20241118】
    一、oracle10g安装1、在ORACLE10g安装准备的过程中:缺少libXp.so.6依赖上网搜过不少文章,但是都不是很好的解决我自己摸索出一个解决方法:在RHEL5的安装盘中找到libXp-1.0.0-8.i386.rpm,进行安装后,便可解决。2、在ORACLE10g安装过程中Xlib:connectionto......
  • Sqlsugar调用Oracle的存储过程
    前段时间在搬迁项目的时候,遇到一个问题,就是用sqlsugar调用oracle的存储过程的时候调用不了;当时卡了一整天,现在有空了把这个问题记录分享一下。先去nuget上安装一下sqlsugar的包:再安装一个oracle的驱动:添加一下Json包:再去创建一下连接 再创建一个测试用的存储过程crea......
  • Oracle OCP认证考试考点详解082系列14
    题记:本系列主要讲解OracleOCP认证考试考点(题目),适用于19C/21C,跟着学OCP考试必过。66.第66题:题目解析及答案:关于撤销(UNDO)和撤销表空间(UNDOTABLESPACE),以下哪两个陈述是正确的?A.一个撤销表空间可能仅由一个实例所拥有。B.撤销段由SYSBACKUP所拥有。C.撤销段由......
  • C# SqlSugar学习笔记
    前言今天介绍一款C#ORM框架什么是ORM?来看一下百度术语:对象关系映射(英语:ObjectRelationalMapping,简称ORM,或O/RM,或O/Rmapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换 通俗理解ORM我们只需要知道ORM是一种技术,使用了ORM之后我们就不必在......