简单的oracle存储过程,oracle 最简单的存储过程

CREATE OR REPLACE  PROCEDURE "MAPINFO"."INPUT_VALUE"  (name in

varchar2)

as

begin

insert into EMPLOYEE values(name,20);

end;

select t.* from employee t where rownum between 1 and 3

程序包体并返回datareador

程序包

CREATE OR REPLACE  PACKAGE "NMS_GIS"."NMS_GIS_TEST"  as

TYPE c_CURSOR IS REF CURSOR;

PROCEDURE OPEN_TABLE_CURSOR (c_Result   OUT c_CURSOR,

p_Out      OUT VARCHAR2);

end;

程序包体

CREATE OR REPLACE  PACKAGE BODY "NMS_GIS"."NMS_GIS_TEST"  is

PROCEDURE OPEN_TABLE_CURSOR(

c_Result   OUT c_CURSOR,  --结果集

p_Out      OUT VARCHAR2)  --错误信息

IS

BEGIN

OPEN c_Result FOR

SELECT * from TEST;

EXCEPTION

WHEN OTHERS THEN

p_Out := SQLERRM;  --存储过程错误

END;

end NMS_GIS_TEST;

调用时

OracleCommand cmd = Conn().CreateCommand();                cmd.CommandType = CommandType.StoredProcedure;                cmd.CommandText = "nms_gis.NMS_GIS_TEST.OPEN_TABLE_CURSOR";                cmd.Parameters.Add("c_Result", OracleType.Cursor);                cmd.Parameters.Add("p_Out", OracleType.VarChar, 50);                cmd.Parameters[0].Direction = ParameterDirection.Output;                cmd.Parameters[1].Direction = ParameterDirection.Output;                OracleDataAdapter da = new OracleDataAdapter(cmd);                DataSet ds = new DataSet();                da.Fill(ds);                MessageBox.Show(ds.Tables[0].Rows.Count.ToString());

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值