最新活动:电脑PC端+手机端+微网站+自适应网页多模板选择-建站388元起价!!!
当前位置:主页 > 网站建设 > Oracle 存储过程教程建站知识

Oracle 存储过程教程建站知识

时间:2023-05-23 15:05:23 阅读: 文章分类: 网站建设 作者: 网络小编

导读:1建站知识一个简单的oracle分页存储过程的实现和调用。在看了众多的分页存储过程以后发现都是针对sqlserver的,而没有oracle的网站seo优化培训网seo优化趋势。

网站seo优化培训网seo优化趋势Oracle分页存储过程的思路于sqlserver的思路是一样的,但是我这里做了点改动,在因为Oracle的语法和规则的不同所以,Oracle分页营销型网站建设存储过程看上去有点不一样。见笑,见笑! 在Oracle的存储过程中返回记录集,需要用到游标变量,Oracle不能像sqlserver那样可以直接返回一个记录集。 由于设想在.net中把复杂的sql语句生成,所以在存储过程中没有去考虑生成sql语句的问题。 以下是在Oracle中实现的分页存储过程。

复制代码 代码如下:

create or replace package DotNet is -- Author : good_hy -- Created : 2004-12-13 13:30:30 -- Purpose : TYPE type_cur IS REF CURSOR; --定义游标变量用于返回记录集 PROCEDURE DotNetPagination( Pindex in number, --分页索引 Psql in varchar2, --产生dataset的sql语句 Psize in number, --页面大小 Pcount out number, --返回分页总数 v_cur out type_cur --返回当前页数据记录 ); procedure DotNetPageRecordsCount( Psqlcount in varchar2, --产生dataset的sql语句 Prcount out number --返回记录总数 ); end DotNot; create or replace package body DotNet is --*************************************************************************************** PROCEDURE DotNetPagination( Pindex in number, Psql in varchar2, Psize in number, Pcount out number, v_cur out type_cur ) AS v_sql VARCHAR2(1000); v_count number; v_Plow number; v_Phei number; Begin ------------------------------------------------------------取分页总数 v_sql := 'select count(*) from (' || Psql || ')'; execute immediate v_sql into v_count; Pcount := ceil(v_count/Psize); ------------------------------------------------------------显示任意页内容 v_Phei := Pindex * Psize + Psize; v_Plow := v_Phei - Psize + 1; --Psql := 'select rownum rn,t.* from cd_ssxl t' ; --要求必须包含rownum字段 v_sql := 'select * from (' || Psql || ') where rn between ' || v_Plow || ' and ' || v_Phei ; open v_cur for v_sql; End DotNetPagination; --************************************************************************************** procedure DotNetPageRecordsCount( Psqlcount in varchar2, Prcount out number ) as v_sql varchar2(1000); v_prcount number; begin v_sql := 'select count(*) from (' || Psqlcount || ')'; execute immediate v_sql into v_prcount; Prcount := v_prcount; --返回记录总数 end DotNetPageRecordsCount; --************************************************************************************** end DotNot;

以下是在.net中调用Oracle分页存储过程的步骤。 在.net调用返回记录集的存储过程,需要用到datareader,但是datareader不支持在datagrid中的分页,因此需要利用datagrid自定义分页功能。

复制代码 代码如下:

关键词标签: 标签 存储过程

声明: 本文由我的SEOUC技术文章主页发布于:2023-05-23 ,文章Oracle 存储过程教程建站知识主要讲述存储过程,标签,Oracle 存储过程教程建站知识1网站建设源码以及服务器配置搭建相关技术文章。转载请保留链接: https://www.seouc.com/article/web_5849.html

我的IDC 网站建设技术SEOUC.COM
专注网站建设,SEO优化,小程序设计制作搭建开发定制网站等,数千家网站定制开发案例,网站推广技术服务。
  • 5000+合作客服
  • 8年从业经验
  • 150+覆盖行业
  • 最新热门源码技术文章