x360ce设置方法:在vb中 DataGrid1与数据库(不使用data ,adodc,DataEnvironment 等控件)如何动态连接库?

来源:百度文库 编辑:高校问答 时间:2024/04/28 07:40:27

使用ADODB数据访问对象来完成,以下给出一段代码:
Private Sub Command1_Click()
Set cnn = New ADODB.Connection
cnn.Open strCnn
Set cmm = New ADODB.Command
Set cmm.ActiveConnection = cnn
cmm.CommandType = adCmdStoredProc
If frmMain.iStatType = 1 Then
cmm.CommandText = "spRoomSale"
ElseIf frmMain.iStatType = 3 Then
cmm.CommandText = "spRoomFullRate"
Else
cmm.CommandText = "spMonthSum"
End If
If frmMain.iStatType = 2 Then
cmm.Parameters.Append cmm.CreateParameter("ThisYear", adVarChar, adParamInput, 4, Text1.Text)
Else
Dim sDate, eDate As Date
sDate = DTPicker1.Value
eDate = DTPicker2.Value
cmm.Parameters.Append cmm.CreateParameter("StartDate", adDBTimeStamp, adParamInput, , sDate)
cmm.Parameters.Append cmm.CreateParameter("EndDate", adDBTimeStamp, adParamInput, , eDate)
End If
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseClient
rs.Open cmm
DataGrid1.ClearFields
Set DataGrid1.DataSource = rs
Select Case frmMain.iStatType
Case 1
DataGrid1.Columns(0).Caption = "类型编号"
DataGrid1.Columns(1).Caption = "客房类型"
DataGrid1.Columns(2).Caption = "销售金额"
DataGrid1.Columns(3).Caption = "销售次数"
Case 2
DataGrid1.Columns(0).Caption = "月份"
DataGrid1.Columns(1).Caption = "销售金额"
Case 3
DataGrid1.Columns(0).Caption = "客房类型"
DataGrid1.Columns(1).Caption = "该类客房数"
DataGrid1.Columns(2).Caption = "入住情况(人·天)"
DataGrid1.Columns(2).Width = DataGrid1.Columns(2).Width + 500
DataGrid1.Columns(3).Caption = "入住率(%)"
End Select
DataGrid1.Refresh
End Sub