设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2904|回复: 8
打印 上一主题 下一主题

[分享]取得存儲過程返回值的最簡代碼

[复制链接]
跳转到指定楼层
1#
发表于 2002-11-9 02:17:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Public Function dimission(emp_sn As Integer)
Dim comm As New ADODB.Command
With comm
  .ActiveConnection = CurrentProject.Connection
  .CommandType = adCmdStoredProc
  .CommandText = "usp_emp_dimission"
  .Parameters.Refresh
  .Parameters(1).Value = emp_sn
  .Execute
End With
If comm.Parameters(0).Value = 0 Then
  MsgBox "procedure was successful! tks your use!"
Else
  MsgBox "employee no:" & CStr(emp_sn) & " dimission fial", vbOKCancel, "HG_info"
End If
Set comm = Nothing
End Function
-----------------------------------------原創--------------------------
[em23]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2002-11-26 22:51:00 | 只看该作者
再次探討此問題,如果調用一個存儲過程,它有多個輸入和輸出參數,哪麼怎樣取得此過程執行後的返回值哪。用同樣的方法,也刷新參數,然後取第一個參數的值,卻判斷失敗。
請各位指點。多謝!
3#
发表于 2003-6-22 00:03:00 | 只看该作者
老大,有结果了吗?
4#
发表于 2003-6-22 06:22:00 | 只看该作者
老大,你最上面发的代码不能执行呀,出错!
HG老大能详细的说一下如何取得存储过程的返回值吗?
5#
发表于 2003-6-23 17:13:00 | 只看该作者
搞定了!
6#
 楼主| 发表于 2003-7-29 18:04:00 | 只看该作者
如果你取不到正确的返回值,试试在过程开始Set nocount on ,在过程结束时set nocount off.
如果过程成功执行返回值为0,若出错返回值为出错代码!
如过你还是取不到正确返回值,也可以试着把用输出参数来输出执行完毕结果,来实现类似return的功能!谢!
7#
 楼主| 发表于 2003-8-12 02:05:00 | 只看该作者
或者:
在cm.execute my_procedure后

debug.print cm.paramters(0)
看一看是不是你所想要的返回值!
8#
发表于 2003-8-24 05:50:00 | 只看该作者
不行呀,我问了好多人都搞不清,为什么呀
9#
 楼主| 发表于 2003-9-13 17:24:00 | 只看该作者
以下是引用royi在2003-6-23 9:13:25的发言:
搞定了!

你问下royi不就知道是怎么回事了吗?何不自忆多试试!
我用此法从没出过问题!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2025-1-11 04:24 , Processed in 0.114722 second(s), 32 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表