`
poson
  • 浏览: 350892 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Oracle定义包和过程,返回结果集

阅读更多

 

CREATE OR REPLACE package pk_wt
is
type mytype is ref cursor;--定义一个变量
procedure p_wt(mycs out mytype); --声明一个过程
end;
CREATE OR REPLACE package BODY pk_wt
is
procedure p_wt(mycs out mytype) --定义一个存储过程
is
begin --begin end,pascal 风格的语句
open mycs for select a,b from abc; --得到一个select 的语句结果,用一个游标来定位,类似一个指针
end p_wt;
end pk_wt;
当我看见这两段sql,突然恍然大悟,这不正是c++面向对象的结构吗?如同在c++中,第一段在class中声明成员函数和变量。第二段定义成员变量的函数体。查了一下资料,发现Oracle的pl/sql正是面向对象的。
以下是在c#中使用前面的过程:
OracleCommand cmd = new OracleCommand("pk_wt.p_wt", conn);
cmd.CommandType = CommandType.StoredProcedure;
OracleParameter p1 = new OracleParameter("mycs", OracleType.Cursor);
p1.Direction = System.Data.ParameterDirection.Output;
cmd.Parameters.Add(p1);
OracleDataReader da = cmd.ExecuteReader();
List<string> st = new List<string>();
while (da.Read())
{
st.Add(da[1].ToString());
}
da.Close();
分享到:
评论

相关推荐

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

    作者通过总结各自多年的软件开发和教学培训经验,与大家分享了掌握Oracle SQL所独有的丰富功能的技巧所在,内容涵盖SQL执行、联结、集合、分析函数、子句、事务处理等多个方面。读者可以学习到以下几个方面的技巧:...

    PL/SQL中编写Oracle数据库分页的存储过程

    此文以oracle数据库中的SCOTT用户的EMP表为例,用PL/SQL Developer编写一个分页存储过程,要求是:可以输入表名,每页显示记录数,当前页,返回总记录数,总页数和返回的结果集。 由于需要返回查询出来的结果集,...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

     数据定义语言Data Definition Language(DDL),用来建立数据库、数据对象和定义其列。例如:CREATE、DROP、ALTER等语句。  数据操作语言Data Manipulation Language(DML),用来插入、修改、删除、查询,可以...

    oracle数据库经典题目

    一、填空 1.在多进程Oracle实例系统中,进程分为用户进程、后台进程和服务进程。 2.标准的SQL语言语句类型可以分为:数据定义语句(DDL)、数据操纵语句(DML)... Oracle数据库中角色分为系统预定义的角色和用户自定义的...

    Oracle9i的init.ora参数中文说明

    在客户机和服务器上使用同一字符集时, 应以该字符集所定义的字符来衡量字符串。现有的列将不受影响。 值范围: BYTE 或 CHAR。 默认值: nls_length_semantics 的数据库字符集的字符所使用的度量单位。BYTE。 nls_...

    PL/SQL Developer8.04官网程序_keygen_汉化

     游标的定义为:用游标来指代一个DML SQL操作返回的结果集。即当一个对数据库的查询操作返回一组结果集时,用游标来标注这组结果集,以后通过对游标的操作来获取结果集中的数据信息。这里特别提出游标的概念,是...

    PLSQLDeveloper下载

     游标的定义为:用游标来指代一个DML SQL操作返回的结果集。即当一个对数据库的查询操作返回一组结果集时,用游标来标注这组结果集,以后通过对游标的操作来获取结果集中的数据信息。这里特别提出游标的概念,是...

    sql总结.doc

    游标允许应用程序对查询语句select 返回的行结果集中每一行进行相同或不同的操作,而不是一次对整个结果集进行同一种操作; 它还提供对基于游标位置而对表中数据进行删除或更新的能力 缺点: 处理大数据量时,效率...

    SQL培训第一期

    关系模型的实体完整性在create table中用primary key约束实现,primary key约束用于定义主键,它保证主键的唯一性和非空性。 1.4.2 参照完整性 关系模型的参照完整性可以通过在create table中用foreign key (&lt;外键&gt;)...

    PL/SQL 基础.doc

    返回一个基于数据库定义的类型 DECLARE v_emp s_emp%ROWTYPE; /*s_emp为表的名字*/ 注:与RECORD类型中定一个record相比,一步就完成, 而RECORD类型中定义分二步:a. 所有的成员变量都要申明; b. 实例化变量;...

    springmybatis

    MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis使用简单的XML或注解用于配置和原始映射,将接口和Java的POJOs(Plan Old Java Objects,普通的Java对象)映射成数据库中的记录. orm...

    JAVA面试题最全集

    一、Java基础知识 1.Java有那些基本数据类型,String是不是基本数据类型,他们有何区别。 2.字符串的操作: 写一个方法,实现字符串的反转,... Object 类中定义的,因此所有的类都继承了它。子类覆盖 finalize() ...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    本书分为5篇15章,共计625个实例和625个经验技巧。每个实例都经作者精心筛选,具有很强的实用性,其中一些实例是开发人员难于寻觅的解决方案。   本书适合PHP的初学者,如高校学生、求职人员作为练习、速查、学习...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    本书分为5篇15章,共计625个实例和625个经验技巧。每个实例都经作者精心筛选,具有很强的实用性,其中一些实例是开发人员难于寻觅的解决方案。   本书适合PHP的初学者,如高校学生、求职人员作为练习、速查、学习...

    asp.net知识库

    发布Oracle存储过程包c#代码生成工具(CodeRobot) New Folder XCodeFactory3.0完全攻略--序 XCodeFactory3.0完全攻略--基本思想 XCodeFactory3.0完全攻略--简单示例 XCodeFactory3.0完全攻略--IDBAccesser ...

    Sql经典练习题库(附答案)

    SQL是高级的非过程化编程语言,是沟通数据库服务器和客户端的重要工具,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以,具有完全不同底层结构的不同...

    SQL语法大全

    以上几个游标类型将直接影响到Recordset对象所有的属性和方法,以下列表说明他们之间的区别。 ------------------------------------------------------------- Recordset属性 adOpenForwardOnly adOpenKeyset ...

Global site tag (gtag.js) - Google Analytics