下面是存储过程
CREATE  PROCEDURE ctemp(@constructnumeric int )
asbegin tran   SELECT SUM(CONVERT(decimal(9, 3), a.totalrate)) * CONVERT(decimal(9, 3), b.unitprice) 
         AS 总价 into #T1
FROM dbo.productmateria a LEFT OUTER JOIN
      dbo.materiabase b ON a.materialcode = b.materialcode
WHERE a.constractnumeric = @constructnumeric
GROUP BY a.materialcode, a.totalrate, b.unitprice
set nocount on 
select sum(总价) as 总额 from #T1经SQL查询分析器调试结果为:936033.777300下面是在VB前台调用该过程,却不知如何取得调试结果?
 With cmd1
         .ActiveConnection = MYCNN
         .CommandType = adCmdStoredProc
         .CommandText = "ctemp"
         .Parameters(1) = CLng(Text1.Text)
         .execute
 end with
谢谢

解决方案 »

  1.   

    set 记录集= cmd1.execute 到记录集取数据
      

  2.   

    Dim con As Connection
    Dim rs As ADODB.Recordset
    Dim com1 As ADODB.Command
    Dim par1 As ADODB.Parameter
    Private Sub Command1_Click()
     Set com1 = New ADODB.Command
        Set com1.ActiveConnection = con
        com1.CommandText = "proc_demo"
        com1.CommandType = adCmdStoredProc
        com1.Parameters.Refresh
        com1.Parameters(0).Value = "DH010001,DH010003"
        Set rs = com1.Execute()
         MsgBox "ok"
            
    End Sub
      

  3.   

    不需要用COMMAND对象就可以完成
    rs.open "exec ctemp 123 ",cn,1,3
    if not rs.eof then  msgbox rs.fields(0)
      

  4.   

    With cmd1
             .ActiveConnection = MYCNN
             .CommandType = adCmdStoredProc
             .CommandText = "ctemp"
             .Parameters(1) = CLng(Text1.Text)
             dim Rs as recordset 
             set rs=new recordset
             set rs=.execute
             msgbox "总额为:" & rs.fields("总额") 
     end with