问题:如何获取执行的存储过程即返回记录集又返回记录集的行数? 存储过程如下:
CREATE PROCEDURE select_view
@maxclass tinyint,
@minclass tinyint,
@recordnum int OUTPUT
AS
select *
from test
where maxclassnum = @minclass and maxclassnum = @maxclass
select @recordnum = @@ROWCOUNT
if @recordnum = 0
return 0
else
return 1
GO
VB执行代码:
Set g_comData.ActiveConnection = g_conData
g_comData.CommandText = "select_view"
g_comData.CommandType = adCmdStoredProc
'// 设置参数---返回值
Set g_parData = g_comData.CreateParameter("RetVal", adInteger, adParamReturnValue, 4)
g_comData.Parameters.Append g_parData '// 设置参数---输入值
Set g_parData = g_comData.CreateParameter("maxclass", adInteger, adParamInput, 3, 11)
g_comData.Parameters.Append g_parData Set g_parData = g_comData.CreateParameter("minclass", adInteger, adParamInput, 3, 1)
g_comData.Parameters.Append g_parData
'// 设置参数---输出值
Set g_parData = g_comData.CreateParameter("recordnum", adInteger, adParamOutput)
g_comData.Parameters.Append g_parData
'// 执行过程
Set g_resData = g_comData.Execute()
g_intRetRecordNum = g_comData.Parameters("recordnum").Value
这样获取的g_intRetRecordNum始终都返回0,或是通过g_resData.RecordCount始终返回-1。
请各位大侠求助,谢谢!
CREATE PROCEDURE select_view
@maxclass tinyint,
@minclass tinyint,
@recordnum int OUTPUT
AS
select *
from test
where maxclassnum = @minclass and maxclassnum = @maxclass
select @recordnum = @@ROWCOUNT
if @recordnum = 0
return 0
else
return 1
GO
VB执行代码:
Set g_comData.ActiveConnection = g_conData
g_comData.CommandText = "select_view"
g_comData.CommandType = adCmdStoredProc
'// 设置参数---返回值
Set g_parData = g_comData.CreateParameter("RetVal", adInteger, adParamReturnValue, 4)
g_comData.Parameters.Append g_parData '// 设置参数---输入值
Set g_parData = g_comData.CreateParameter("maxclass", adInteger, adParamInput, 3, 11)
g_comData.Parameters.Append g_parData Set g_parData = g_comData.CreateParameter("minclass", adInteger, adParamInput, 3, 1)
g_comData.Parameters.Append g_parData
'// 设置参数---输出值
Set g_parData = g_comData.CreateParameter("recordnum", adInteger, adParamOutput)
g_comData.Parameters.Append g_parData
'// 执行过程
Set g_resData = g_comData.Execute()
g_intRetRecordNum = g_comData.Parameters("recordnum").Value
这样获取的g_intRetRecordNum始终都返回0,或是通过g_resData.RecordCount始终返回-1。
请各位大侠求助,谢谢!
解决方案 »
- 续VB逆序问题
- 不同分辨率显示器下界面问题,困扰啊
- 这是CSDN的BUG吗?
- 怎样在光标处插入文本?
- 一个VB调用WebService的问题。急!!!!
- 统计一下搞VB的有多少是计算机专业出身 (Yes Or No)??
- 如何将从数据库读出来的数据集RS附值给一个数组.
- sql server備份与數據庫使用者?***********急急************
- 本想考研,就先不来这里了,可是妹妹要高考,过来请大家祝福一下!散分
- 急!如何将数组中的内容通过表格显示出来!(再线等待……)
- 怎么 将一个.txt文件中的数据读入内存并将这些数据存入一个二维数组中 急!!!!
- 类似MonthView但可改变指定日期颜色的控件
所以我用Con.Exec來做一樣的