是这样的,我在数据库上建立一个储存过程,如下:
======================================
CREATE PROCEDURE from_to  
@from_date as datetime,@to_date as datetime
AS
begin
select QN_NO,QN_DATE,CUST_CODE,SALES from QNHEAD 
where QN_DATE between @from_date and @to_date order by QN_NO
end
return
GO
=====================================
提供给用户两个文本框,text1和text2。比如text1.text=2001-1-1,text2.text=2005-4-2,然后点"查看"按钮就可以返回记录到DataGrid1上显示。我还用了Adodc控件,象我这样的问题,在点"查看"的那段代码怎样实现调用储存过程from_to
Private Sub Command1_Click()
.......
End Sub

解决方案 »

  1.   

    在这个论坛看到帖子,解决了,不过还是没有用到控件Adodc
    --------------------------
    Public Function AppendX()
    Dim cn As New ADODB.Connection
    cn.ConnectionString = "provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=WMRDATA;Data Source=ERPSERVER"
    cn.CursorLocation = adUseClient
    cn.Open
    Dim cmd As ADODB.Command
    Dim prm1 As ADODB.Parameter, prm2 As ADODB.Parameter
    Dim rs As ADODB.Recordset
    Dim str1 As String, str2 As StringSet cmd = New ADODB.Command
    cmd.ActiveConnection = cn
    cmd.CommandText = "from_to"
    cmd.CommandType = adCmdStoredProc
    str1 = Text1.Text
    str2 = Text2.TextSet prm1 = cmd.CreateParameter("from_date", adDBDate, adParamInput, 8)
    cmd.Parameters.Append prm1
    prm1.Value = str1
    Set prm2 = cmd.CreateParameter("to_date", adDBDate, adParamInput, 8)
    cmd.Parameters.Append prm2
    prm2.Value = str2Set rs = cmd.Execute
    Set DataGrid1.DataSource = rs
    End Function
    ------------------------------
    定义上面一个功能,然后在这里调用
    Private Sub Command1_click()
    call AppendX
    End Sub