使用VB撰寫的程式如下:
Sub OnLButtonDown(ByVal Item, ByVal Flags, ByVal x, ByVal y)
'---------------------------------------
Dim con
Dim kongjian1
Set kongjian1 = ScreenItems("控制元件4")
kongjian1.Visible = 1
Dim str
'Dim blnOK
Dim sql
Dim it
Dim i
Dim rst
Dim cmd
Dim obj
Dim ok
Dim qyear
Dim qmonth
Dim qday
Dim qhour
Dim qendyear
Dim qendmonth
Dim qendday
Dim qendhour
Dim t1,t2
On Error Resume Next
Set obj=ScreenItems("控制元件4")
obj.listitems.clear
Set con=CreateObject("ADODB.Connection")
str="Provider=MSDASQL;DSN=yx;Uid=sa;Pwd=;"
con.ConnectionString=str
con.Open
If con.State=1 Then
Dim rili
Set rili=ScreenItems("rq1")
qyear=rili.year
qmonth=rili.month
qday=rili.day
qhour=rili.hour
if qmonth<10 then
if qday<10 then
t1=qyear & "-0" & qmonth & "-0" & qday
Else
t1=qyear & "-0" & qmonth & "-" & qday
End If
End If
If qmonth>=10 Then
If qday<10 Then
t1=qyear & "-" & qmonth & "-0" & qday
else
t1=qyear & "-" & qmonth & "-" & qday
End If
End If
Dim d1
Dim d2
d1=t1 & " 00" & ":00" & ":00"
d2=t1 & " 23" & ":59" & ":00"
sql="select * from dbo.日報表 where 時間>= '"&d1&"' and 時間<='"&d2&"' order by 時間 ASC"
Set cmd=CreateObject("ADODB.Command")
cmd.ActiveConnection=con
cmd.CommandText=sql
Set rst=CreateObject("ADODB.Recordset")
Set rst=cmd.Execute
i=1
Do Until rst.EOF
Set it=obj.listItems.Add
it.Text =i
it.subitems(1)=rst.Fields("時間").value
it.subitems(2)=rst.fields("進水液位").value
it.subitems(3)=rst.fields("進水1_液位差").value
it.subitems(4)=rst.fields("進水2_液位差").value
it.subitems(5)=rst.fields("進水溫度").value
it.subitems(6)=rst.fields("進水氨氮").value
it.subitems(7)=rst.fields("進水COD").value
it.subitems(8)=rst.fields("進水PH").value
it.subitems(9)=rst.fields("細格柵1_液位差").value
it.subitems(10)=rst.fields("細格柵2_液位差").value
it.subitems(11)=rst.fields("進水瞬時流速").value
it.subitems(12)=rst.fields("訊訓池1_溶解氧1").value
it.subitems(13)=rst.fields("訊訓池1_污泥濃度1").value
it.subitems(14)=rst.fields("訊訓池1_溶解氧2").value
it.subitems(15)=rst.fields("訊訓池1_污泥濃度2").value
it.subitems(16)=rst.fields("訊訓池2_溶解氧1").value
it.subitems(17)=rst.fields("訊訓池2_污泥濃度1").value
it.subitems(18)=rst.fields("訊訓池2_溶解氧2").value
it.subitems(19)=rst.fields("回流污泥瞬時流速").value
it.subitems(20)=rst.fields("配水井液位").value
it.subitems(21)=rst.fields("貯泥池液位").value
it.subitems(22)=rst.fields("出水COD").value
it.subitems(23)=rst.fields("出水SS").value
it.subitems(24)=rst.fields("出水PH").value
it.subitems(25)=rst.fields("出水氨氮").value
it.subitems(26)=rst.fields("出水瞬時流速").value
it.subitems(27)=rst.fields("進水總流量").value
it.subitems(28)=rst.fields("出水總流量").value
it.subitems(29)=rst.fields("回流污泥總流量").value
i=i+1
rst.movenext
Loop
rst.close
Set rst=Nothing
Set cmd=Nothing
'MsgBox "執行成功",vbOKOnly,"提示"
con.Close
End If
Set con=Nothing
End Sub
運行后listview控制元件中顯示滿足查詢條件的行數,例如,資料庫中有10行資料滿足要求,就顯示1,2,3.... 10,不知道哪里出現問題,求大神幫忙,急救。
uj5u.com熱心網友回復:
不知道哪里出錯了?你自己寫的代碼,出錯了都不知道哪里出錯?
uj5u.com熱心網友回復:
萬一select陳述句回傳100000條記錄呢?轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/101130.html
上一篇:VB開發問題
