知识大全 使用VB调用Oracle程序包内的存储过程返回结果集
Posted 时间
篇首语:少量的常识,当得大量的学问。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 使用VB调用Oracle程序包内的存储过程返回结果集相关的知识,希望对你有一定的参考价值。
使用VB调用Oracle程序包内的存储过程返回结果集 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
在实际的项目开发中我们需要通过VB(或其他语言工具)调用Oracle程序包内的存储过程返回结果集 这里以短信运营平台中的一个调用为例来说明这个过程 希望对你有所帮助 一 使用SQL*Plus创建以下项目: 建表( OW_SMP 为方案名称 下同) CREATE TABLE OW_SMP SM_Send_SM_List ( SerialNo INT PRIMARY KEY 序列号 ServiceID VARCHAR( ) 服务ID(业务类型) SMContent VARCHAR( ) 短信内容 SendTarget VARCHAR( ) 发送目标 Priority SMALLINT 发送优先级 RCompleteTimeBegin DATE 要求完成日期(开始) RCompleteTimeEnd DATE 要求完成日期(结束) RCompleteHourBegin SMALLINT 要求完成时间(开始) RCompleteHourEnd SMALLINT 要求完成时间(结束) RequestTime DATE 发送请求时间 RoadBy SMALLINT 发送通道( GSM模块 短信网关) SendTargetDesc VARCHAR( ) 发送目标描述 FeeValue FLOAT 本条短信信息费用(单位 分) Pad VARCHAR( ) Pad VARCHAR( ) Pad VARCHAR( ) Pad VARCHAR( ) Pad VARCHAR( ) ); 建立自增序列 Create sequence OW_SMP SENDSNO ; CREATE OR REPLACE TRIGGER OW_SMP BFINERT_SM_SEND BEFORE INSERT ON SM_SEND_SM_LIST FOR EACH ROW begin select SendSNo nextval into :new serialno from dual; end; 插入数据 Insert SM_Send_SM_List (SMCOntent) values( Happy New Year To Jakcy! ); Insert SM_Send_SM_List (SMCOntent) values( Happy New Year To Wxl! ); 建立程序包和包体 CREATE OR REPLACE PACKAGE OW_SMP OW_SMP_PACKAGE is type tSerialNo is table of sm_send_sm_list SerialNo%type index by binary_integer; type tServiceID is table of sm_send_sm_list ServiceID%type index by binary_integer; type tSMContent is table of sm_send_sm_list SMContent%type index by binary_integer; type tSendTarget is table of sm_send_sm_list SendTarget%type index by binary_integer; type tPriority is table of sm_send_sm_list Priority%type index by binary_integer; type tRCompleteTimeBegin is table of sm_send_sm_list RCompleteTimeBegin%type index by binary_integer; type tRCompleteTimeEnd is table of sm_send_sm_list RCompleteTimeEnd%type index by binary_integer; type tRCompleteHourBegin is table of sm_send_sm_list RCompleteHourBegin%type index by binary_integer; type tRCompleteHourEnd is table of sm_send_sm_list RCompleteHourEnd%type index by binary_integer; type tRequestTime is table of sm_send_sm_list RequestTime%type index by binary_integer; type tRoadBy is table of sm_send_sm_list RoadBy%type index by binary_integer; type tSendTargetDesc is table of sm_send_sm_list SendTargetDesc%type index by binary_integer; type tFeeValue is table of sm_send_sm_list FeeValue%type index by binary_integer; type tPad is table of sm_send_sm_list Pad %type index by binary_integer; type tPad is table of sm_send_sm_list Pad %type index by binary_integer; type tPad is table of sm_send_sm_list Pad %type index by binary_integer; type tPad is table of sm_send_sm_list Pad %type index by binary_integer; type tPad is table of sm_send_sm_list Pad %type index by binary_integer; type tCount is table of number index by binary_integer; procedure GetSendSM (v_NowByMinute in Number v_SerialNo out tSerialNo v_ServiceID out tServiceID v_SMContent out tSMContent v_SendTarget out tSendTarget v_Priority out tPriority v_RCompleteTimeBegin out tRCompleteTimeBegin v_RCompleteTimeEnd out tRCompleteTimeEnd v_RCompleteHourBegin out tRCompleteHourBegin v_RCompleteHourEnd out tRCompleteHourEnd v_RequestTime out tRequestTime v_RoadBy out tRoadBy v_SendTargetDesc out tSendTargetDesc v_FeeValue out tFeeValue v_Pad out tPad v_Pad out tPad v_Pad out tPad v_Pad out tPad v_Pad out tPad v_Count out tCount ; end; / CREATE OR REPLACE PACKAGE BODY OW_SMP OW_SMP_PACKAGE is procedure GetSendSM 获得前 条在指定时间内的待发短信 (v_NowByMinute in Number v_SerialNo out tSerialNo v_ServiceID out tServiceID v_SMContent out tSMContent v_SendTarget out tSendTarget v_Priority out tPriority v_RCompleteTimeBegin out tRCompleteTimeBegin v_RCompleteTimeEnd out tRCompleteTimeEnd v_RCompleteHourBegin out tRCompleteHourBegin v_RCompleteHourEnd out tRCompleteHourEnd v_RequestTime out tRequestTime v_RoadBy out tRoadBy v_SendTargetDesc out tSendTargetDesc v_FeeValue out tFeeValue v_Pad out tPad v_Pad out tPad v_Pad out tPad v_Pad out tPad v_Pad out tPad v_Count out tcount) is cursor sendsm_cur is select * from sm_send_sm_list where RCompleteHourBegin<=v_NowByMinute and RCompleteHourEnd>=v_NowByMinute and (RCompleteTimeBegin is null or RCompleteTimeBegin<=sysdate) and (RCompleteTimeEnd is null or RCompleteTimeEnd>=sysdate ) and RowNum< ; smcount number default ; begin for sm in sendsm_cur loop v_SerialNo(smcount):=sm SerialNo; v_ServiceID(smcount):=sm ServiceID; v_SMContent(smcount):=sm SMContent; v_SendTarget(smcount):=sm SendTarget; v_Priority(smcount):=sm Priority; v_RCompleteTimeBegin(smcount):=sm RCompleteTimeBegin; v_RCompleteTimeEnd(smcount):=sm RCompleteTimeEnd; v_RCompleteHourBegin(smcount):=sm RCompleteHourBegin; v_RCompleteHourEnd(smcount):=sm RCompleteHourEnd; v_RequestTime(smcount):=sm RequestTime; v_RoadBy(smcount):=sm RoadBy; v_SendTargetDesc(smcount):=sm SendTargetDesc; v_FeeValue(smcount):=sm FeeValue; v_Pad (smcount):=sm Pad ; v_Pad (smcount):=sm Pad ; v_Pad (smcount):=sm Pad ; v_Pad (smcount):=sm Pad ; v_Pad (smcount):=sm Pad ; cha138/Article/program/Oracle/201311/18179相关参考
一无返回值的存储过程 存储过程为 CREATEORREPLACEPROCEDURETESTA(PARAINVARCHARPARAIN VARCHAR)
知识大全 PHP调用MsSQL Server 2012存储过程获取多结果集(包含output参数)的详解
PHP调用MsSQLServer2012存储过程获取多结果集(包含output参数)的详解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后
Oracle动态SQL返回单条结果和结果集 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! DDL
Oracle不支持类似于MySQL中的limit但你还是可以rownum来限制返回的结果集的行数 如果你只希望返回前十行纪录你可以这样写 SELECT*FROMtableWHERERO
Oracle存储过程返回数组的方法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! oracle存
Ibatis调用Oracle存储过程 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 最近开始接触
VFP中调用Oracle的存储过程 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! VFP由于其通
在看了众多的分页存储过程以后发现都是针对sqlserver的而没有oracle的因此想写一个关于oracle的存储过程因为我用到的数据库是oracleoracle分页存储过程的思路于sqlserv
Jsp中调用Oracle存储过程的小例子 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! /*执行
调用Oracle数据库中的存储过程需要两步走 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 存储