搜索
首页 电脑/网络 软件 网络软件

急问VB中通过ODBC调用Oracle中存储过程无返回得问题

  一段VB通过ODBC访问数据库通过存储过程获取数据得代码。 在SQL Server中测试通过。 但是在与Oracle数据库连接时无返回结果。 代码如下: dim strSQL as string Dim cmdPara As New ADODB。Parameter Dim cmdRecord As New ADODB。
  Command Dim conAlarm As ADODB。Connection Dim recdAlarm As ADODB。Recordset strSQL = "DSN=test;UID=aaa;PWD=bbb;" Set conAlarm = New ADODB。
  Connection With conAlarm 。ConnectionString = strSQL 。CommandTimeout = 15 。open End With With cmdRecord 。ActiveConnection = conAlarm 。
  CommandType =adCmdStoredProc 。CommandText ="testprocedus" 。Parameters。Append 。CreateParameter("BeginTime", adVarChar, adParamInput,20 , alarmtime) 。
  Parameters。Append 。CreateParameter("EndTime", adVarChar, adParamInput,20 , tmpdate) 。Parameters。Append 。CreateParameter("cJELimit", adVarChar, adParamInput, 10, prolimit) 。
  Parameters。Append 。CreateParameter("cTerm", adVarChar, adParamInput, 1, procterm) 。Parameters。Append 。CreateParameter("iShopNum", adInteger, adParamInput,4 , InShopNum) End With Set recdAlarm = cmdRecord。
  Execute Do While Not recdAlarm。EOF 。。。。。。。 recdAlarm。MoveNext Loop 调用得存储过程和包如下: 包 CREATE OR REPLACE PACKAGE pkg_AB as type sale_t is record( Except_ShopNum varchar2(4), Except_Name varchar2(14), Except_Type varchar2(15), Except_IsCount varchar2(15), Except_Person varchar2(15), Except_Money varchar2(15), Except_Time varchar2(15), Except_Place varchar2(15), Except_DetailNum varchar2(15), Except_IsClosed varchar2(15), Except_Status varchar2(15)); type curtype is ref cursor return sale_t; end pkg_AB; 存储过程 create or replace procedure ps_AB_TuiHuo( begintime in varchar2, endtime in varchar2, cJELimit in varchar2, --Decimal =0。
  0, cTerm in varchar2, --int=1 iShopNum in int, v_cur in out pkg_ rtype) as JELimit float; Term int; begin Term:=to_number(cTerm); if Term=1 then open v_cur for select distinct to_char(iShopNum) as Except_ShopNum, 'AB' as Except_Name, '1' as Except_Type, '1' as Except_IsCount, rson as Except_Person, to_char(abs( )) as Except_Money, to_char(b。
  date,'yyyy-mm-dd hh24:mi:ss') as Except_Time, as Except_Place, to_char( billno) as Except_DetailNum, '0' as Except_IsClosed, '0' as Except_Status from table1 a,table2 b where = and b。
  b='4' and b。date>=to_date(begintime ,'yyyy-mm-dd hh24:mi:ss') and b。dateJELimit order by 7; end if; end; 该存储过程在VC做得程序中使用也正常 ORCACLE服务器版本为817得 客户端817得和9i得都试验过,结果一样。
  

全部回答

2006-08-31

0 0
DSN=test;UID=aaa;PWD=bbb看看这句的语法 最后在该句之上加上了 driver=来指定ODBC驱动试试

类似问题换一批

热点推荐

热度TOP

相关推荐
加载中...

热点搜索 换一换

电脑/网络
网络软件
程序设计
电脑装机
操作系统/系统故障
硬件
笔记本电脑
百度
互联网
反病毒
软件
软件
网络软件
多媒体软件
系统软件
办公软件
图像处理软件
网络软件
网络软件
举报
举报原因(必选):
取消确定举报