有个存储过程如下,表t1有6条记录,在SQL中执行
exec au_info '01'能查找到一条记录,但是在程序中执行如下代码,rstemp的state状态总是0,为何?
Dim adocn As New ADODB.Connection
Dim rstemp As New ADODB.Recordset
Dim strExec As Stringadocn.CommandTimeout = 15
adocn.CursorLocation = adUseClient
adocn.Open "Provider=SQLOLEDB;server=.;UID=sa;pwd=;database=aaa"strExec = "exec au_info '01'"
rstemp.Open strExec, adocn, adOpenKeyset, adLockReadOnlyIf rstemp.State = 1 Then
MsgBox rstemp.RecordCount
Else
MsgBox "NO"
End If
'程序结束
'存储过程如下create  PROCEDURE au_info 
   @chartname varchar(40)
AS
declare @@code char(10)
declare @@name char(10)IF EXISTS (select * from tempdb..sysobjects where name='##t1')
   DROP table ##t1SELECT top 0 * into ##t1 FROM t1 DECLARE abc CURSOR FOR
SELECT code,name FROM t1 OPEN abcFETCH NEXT FROM abc into @@code,@@name
WHILE (@@FETCH_STATUS = 0)
 begin  
insert into ##t1 values(@@code,@@name)
FETCH NEXT FROM abc into @@code,@@name
 endCLOSE abc
DEALLOCATE abc
select * from ##t1 where code=@chartname