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

 我来答
zdingyun
2006-03-05 · 知道合伙人软件行家
zdingyun
知道合伙人软件行家
采纳数:15429 获赞数:48174
1982年上海业余工业大学化工系毕业 现退休

向TA提问 私信TA
展开全部
使用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
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式