社区
非技术类
帖子详情
在vb里怎么得到存储过程的返回值,还有怎么带参数 最好有例子
bjdahai
2002-01-22 09:32:05
...全文
149
4
打赏
收藏
在vb里怎么得到存储过程的返回值,还有怎么带参数 最好有例子
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chsl918
2002-01-23
打赏
举报
回复
哈哈,当时我遇到这个问题的时候也是特别郁闷!!不过你就比较幸福了因为我有全部的代码!!这个是调用ETL_ODS_TO_RB存储过程,参数5是个返回值(返回错误信息的)!另外这里用时间参数的传递所以运行代码的开始是进行时间的格式化!执行存储过程后面是一些错误处理。有问题可以给我发mail:chsl@cattsoft.com
首先是声明代码:
Public cmd As New ADODB.Command
Public param As New ADODB.Parameter
Public Con As New ADODB.Connection
然后是运行代码,
Private Function Int_Etl_Ods_To_Rb(dEnd_date As Date, _
dtGenDate As Date) As String
'******************************************************************
'目的:调用Etl_Ods_To_Rb过程,进行RB数据库的初始化
'输入: i_dtEndTime 抽取的结束日期,这个日期为系统日期
' i_dtGenDate 抽取的生成时间,这个时间为调用本过程的时间,精确到秒
'记录:日期: 作者: 修改注释:
' 2001/6/45 陈颂雷 开始编写
'******************************************************************
Dim vEnd_Date As String
Dim vGenDate As String
Dim o_vcErrm As String
Set cmd = New ADODB.Command
MainFrom.Caption = "正在进行RB初始化抽取!"
vEnd_Date = Format(dEnd_date, "YYYY")
vEnd_Date = vEnd_Date & "/" & Format(dEnd_date, "MM")
vEnd_Date = vEnd_Date & "/" & Format(dEnd_date, "DD")
vGenDate = Year(dtGenDate) & "/"
If Month(dtGenDate) < 10 Then
vGenDate = vGenDate & "0" & Month(dtGenDate) & "/"
Else
vGenDate = vGenDate & Month(dtGenDate) & "/"
End If
If Day(dtGenDate) < 10 Then
vGenDate = vGenDate & "0" & Day(dtGenDate)
Else
vGenDate = vGenDate & Day(dtGenDate)
End If
If Hour(dtGenDate) < 10 Then
vGenDate = vGenDate & "0" & Hour(dtGenDate)
Else
vGenDate = vGenDate & Hour(dtGenDate)
End If
If Minute(dtGenDate) < 10 Then
vGenDate = vGenDate & "0" & Minute(dtGenDate)
Else
vGenDate = vGenDate & Minute(dtGenDate)
End If
If Second(dtGenDate) < 10 Then
vGenDate = vGenDate & "0" & Second(dtGenDate)
Else
vGenDate = vGenDate & Second(dtGenDate)
End If
'进行调用
cmd.ActiveConnection = "Provider=MSDASQL.1;Persist Security Info=False;User ID=DW_ETL;PWD=DW_ETL;Data Source=EXTRACT"
cmd.CommandType = adCmdStoredProc
'下面这句定义超时时间,我的程序运行时间超长所以要定义下面这句
cmd.CommandTimeout = 200000
cmd.CommandText = "ETL_ODS_TO_RB"
'第一个参数
Set param = cmd.CreateParameter("i_cOprType", adChar, adParamInput, 20, "INIT")
cmd.Parameters.Append param
param.Value = "INIT"
'第二个参数
Set param = cmd.CreateParameter("iSubID", adInteger, adParamInput, 20, 1)
cmd.Parameters.Append param
param.Value = 1
'第三个参数
Set param = cmd.CreateParameter("i_dEnd_date", adChar, adParamInput, 10, vEnd_Date)
cmd.Parameters.Append param
param.Value = vEnd_Date
'第四个参数
Set param = cmd.CreateParameter("i_dtGenDate", adChar, adParamInput, 20, vGenDate)
cmd.Parameters.Append param
param.Value = vGenDate
'第五个参数
Set param = cmd.CreateParameter("o_vcErrm", adChar, adParamOutput, 2000, o_vcErrm)
cmd.Parameters.Append param
DoEvents
cmd.Execute
If Not IsNull(cmd(4)) Then
Int_Etl_Ods_To_Rb = cmd(4)
ErrorFlag = False
Else
Int_Etl_Ods_To_Rb = ""
End If
Set cmd = Nothing
End Function
lily0000000
2002-01-23
打赏
举报
回复
cnn_Log.Execute "CREATE PROCEDURE LogStoredProcedure (@stID int) As select * from 日志表 where 频道id=@stid return "
这是一个创建日志库存储过程的例子,你看看吧,或许会有启发。return哦。
@stID是自己设置的参数,int是其类型,as后是存储过程内容代码。
acptvb
2002-01-22
打赏
举报
回复
感谢您使用微软产品。
关于在VB中调用存储过程的方法,您可以参考以下文档:
Q194792 - HOWTO: Retrieve Values in SQL Server Stored Procedures w/ ADO
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q194792
- 微软全球技术中心 VB技术支持
立即参加微软认证的“最有价值专家”评选,赢取价值万元以上的丰富奖品!详情参见(http://www.csdn.net/expert/Topic/456/456919.shtm)
本贴子以“现状”提供且没有任何担保,同时也没有授予任何权利。具体事项可参见使用条款(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。
zhoushaoj
2002-01-22
打赏
举报
回复
vb怎么调用存储过程?
VB
6.0 调用
存储过程
的
例子
(方法一)
VB
6.0 调用
存储过程
的
例子
(方法一) rm1窗体,Copy以下的代码到窗体中,该段代码将测试
存储过程
ADOTestRPE的
返回值
、输入
参数
及输出
参数
,测试的过程中,可能需要修改链接字符串。
VB
.NET 2008调用SQL
存储过程
并
返回值
示例
包括
参数
传递,接收
存储过程
返回值
,
存储过程
遇错误继续执行及停止执行
VB
调用oracle
带
返回值
的
存储过程
VB
调用oracle
带
返回值
的
存储过程
DEMO
VB
SQL
存储过程
实例
VB
SQL
存储过程
实例,简单适用!已通过
VB
6测试。。
在
VB
.NET中使用MS Access
存储过程
的
例子
VB
.NET中使用MS Access
存储过程
非技术类
743
社区成员
26,910
社区内容
发帖
与我相关
我的任务
非技术类
VB 版八卦、闲侃,联络感情地盘,禁广告帖、作业帖
复制链接
扫一扫
分享
社区描述
VB 版八卦、闲侃,联络感情地盘,禁广告帖、作业帖
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章