asp.net调用oracle存储过程
oracle内的存储过程是通过游标返回结果集的
DataTable dt = new DataTable();
OracleParameter[] paras = new OracleParameter[];
paras[] = new OracleParameter("p_StartTime", OracleType.Char);
paras[].Value = StartTime;
paras[] = new OracleParameter("p_EndTime", OracleType.Char);
paras[].Value = EndTime;
paras[] = new OracleParameter("P_SelectStr", OracleType.VarChar);
paras[].Value = SelectStr;
paras[] = new OracleParameter("p_SubStation", OracleType.Char);
paras[].Value = SubID;
paras[] = new OracleParameter("io_cursor", OracleType.Cursor);
paras[].Direction = ParameterDirection.Output;
dt = DBHelper.ExecuteTable("datacheck_handcheck.dc_handcheck_apsel", CommandType.StoredProcedure, paras);
return dt;
var dr = cmd.ExecuteReader();
//指定FetchSize,每次讀取2000筆
dr.FetchSize = dr.RowSize * ;
var count = ;
while (dr.Read())
count++;
我驚呆了!快了10倍,這麼多年來,居然不知道有這招?而FetchSize在單筆資料量大、筆數龐大的場合,最能展現威力。在本例中,RowSize約1K,1萬筆資料量約10MB,原本128KB要讀78次,修改FetchSize後只需讀6次,產生10倍的速度差異。
未來大家使用ODP.NET讀取大量資料如遇效能不佳,加入一行FetchSize設定就可能脫胎換骨,可多加利用。
asp.net调用oracle存储过程的更多相关文章
- MyBatis调用Oracle存储过程
MyBatis调用Oracle存储过程 1.无输入和输出参数的存储过程 2.带有输入和输出参数的存储过程 3.返回游标的存储过程 mybatis中的配置文件代码 <resultMap type= ...
- Java调用oracle存储过程通过游标返回临时表数据
注:本文来源于 < Java调用oracle存储过程通过游标返回临时表数据 > Java调用oracle存储过程通过游标返回临时表数据 项目开发过程中,不可避免的会用到存储过程返回结 ...
- C#调用Oracle存储过程
C#调用Oracle存储过程的代码如下所示: using System; using System.Collections.Generic; using System.Collections.Obje ...
- C#调用 oracle存储过程
C#调用oracle 存储过程与调用Sql server存储过程类似,比较简单:直接给出示例: /// <summary> /// 判断物料类型是不是总部管控 /// </summa ...
- 123 c#调用oracle存储过程返回数据集 --通过oracle存储过程返回数据集
c#调用oracle存储过程返回数据集 2008-12-20 10:59:57| 分类: net|字号 订阅 CREATE OR REPLACE PACKAGE pkg_tableTypeIS ...
- c#调用oracle存储过程返回数据集
c#调用oracle存储过程返回数据集 2008-12-20 10:59:57| 分类: net|字号 订阅 CREATE OR REPLACE PACKAGE pkg_tableTypeIS ...
- C#调用Oracle存储过程的方法
C#调用Oracle存储过程的方法 准备: 环境:pl/sql+oracle9i+vs2008 创建表test: create table TEST( ID NUMBER,//编号 NA ...
- Oracle创建表语句(Create table)语法详解及示例、、 C# 调用Oracle 存储过程返回数据集 实例
Oracle创建表语句(Create table)语法详解及示例 2010-06-28 13:59:13| 分类: Oracle PL/SQL|字号 订阅 创建表(Create table)语法详解 ...
- python调用oracle存储过程
oracle 存储过程 python调用oracle存储过程 -- 通过cx_Oracle连接 import cx_Oracle # 连接数据库 orcl_engine = 'scott/s123@x ...
随机推荐
- 没有上司的舞会(hdu 1520)
题目描述 Description Ural大学有N个职员,编号为1~N.他们有从属关系,也就是说他们的关系就像一棵以校长为根的树,父结点就是子结点的直接上司.每个职员有一个快乐指数.现在有个周年庆宴会 ...
- 【linux】ls与ll区别
ll是一个事先被定义好的别名(alias).别名就是赋予一条命令或者一列命令的名称.可以将别名作为缩写的同义词.在我的Ubuntu系统上,~/.bashrc文件中有这么一条语句alias ll='ls ...
- Python基础教程笔记——第6章:抽象(函数)
(1)计算裴波那契数列: fbis=[0,1] num=int(input("please input the number")) for i in range(num-2): f ...
- linux 安装问题make: 没有指明目标并且找不到makefile。 停止
错误发生的可能原因,忘记安装软件需要的依赖.
- 洛谷—— P2002 消息扩散
P2002 消息扩散 题目背景 本场比赛第一题,给个简单的吧,这 100 分先拿着. 题目描述 有n个城市,中间有单向道路连接,消息会沿着道路扩散,现在给出n个城市及其之间的道路,问至少需要在几个城市 ...
- MongoDB学习day05--MongDB开启权限验证,创建用户
一.MongoDB账户权限配置 1.创建超级管理员用户 use admin db.createUser({ user:'admin', pwd:'123456', roles:[{role:'root ...
- maven 新建项目时修改默认jre路径
新建maven项目时,JRE System Library默认为J2SE-1.5 如果想修改为1.7,修改maven的settings.xml ,在profiles中添加 <profile> ...
- java.util.MissingResourceException: Can't find resource for bundle oracle.sysman.db.rsc.LoginResourc
http://blog.itpub.net/197458/viewspace-1055358/ oracle 10.2.0.4 windows 2003 X64 平台 系统安装EMCA正常.第一次 ...
- StringUtil内部方法差异
StringUtil 的 isBlank.isEmply.isNotEmpty.isNotBlank 区别 String.trim()方法: trim()是去掉首尾空格 append(Stri ...
- PHP 按位与或 (^ 、&)
今天朋友群里朋友问了下 按位与或的问题.. 按位于主要是对二进制数操作. <?php $a = 1; $b = 2; $c = $a^b; ?> 这里不是单纯的相加关系 十进制 1换算成二 ...