机房收费--组合查询
生活随笔
收集整理的這篇文章主要介紹了
机房收费--组合查询
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在學(xué)生基本信息維護(hù)這一窗體里,有一個(gè)組合查詢,通過(guò)組合查詢我們可以隨意選擇不同的條件,進(jìn)而查詢到自己想要查詢的內(nèi)容。
從上圖我們不難看出,查詢的條件是比較復(fù)雜一些,而且一個(gè)條件的設(shè)定就必須包含三個(gè)控件的內(nèi)容,三個(gè)條件的關(guān)系分為兩種,即“與””或”。且其在選擇中有一定的順序:只有第一行的條件全部填好,才可以選擇第一個(gè)組合關(guān)系;同理,只有前兩行的條件及第一個(gè)組合關(guān)系按順序填好,才可以選擇第二個(gè)組合關(guān)系,進(jìn)而填寫第三行條件。
當(dāng)然,還有一點(diǎn)不得不提的是,當(dāng)字段名為“性別”時(shí),操作符只能選擇“=”或“<>”;字段名為日期或者時(shí)間時(shí),查詢內(nèi)容要有格式要求,其他優(yōu)化內(nèi)容同理。
下面是流程圖:
代碼如下:
Dim c(2) As Boolean '判斷條件中的格子中是否有數(shù)據(jù)'判斷三個(gè)條件對(duì)應(yīng)的框中是否為空If cobField1.Text = "" Or cobSymbol1.Text = "" Or txtContent1.Text = "" ThenElsec(0) = True '第一欄不為空If cobField2.Text = "" Or cobSymbol2.Text = "" Or txtContent2.Text = "" ThenElsec(1) = True '第二欄不為空If cobField3.Text = "" Or cobSymbol3.Text = "" Or txtContent3.Text = "" ThenElsec(2) = True '第三欄不為空End IfEnd IfEnd IftxtSQL = "select * from student_Info where "'組合查詢所有的情況If c(2) ThenIf cobRelation2.Text = "或" Then'0 or 1 or 2txtSQL = txtSQL & CField(cobField1.Text) & CSymbol(cobSymbol1.Text) & "'" & CContent(txtContent1.Text) & "'" & "or " & CField(cobField2.Text) & CSymbol(cobSymbol2.Text) & " '" & CContent(txtContent2.Text) & "'" & "or " & CField(cobField3.Text) & CSymbol(cobSymbol3.Text) & " '" & CContent(txtContent3.Text) & "'"Set mrc = ExecuteSQL(txtSQL, Msgtext)Call Addmrc.CloseElseIf cobRelation2.Text = "與" Then'0 and 1 and 2txtSQL = txtSQL & CField(cobField1.Text) & CSymbol(cobSymbol1.Text) & "'" & CContent(txtContent1.Text) & "'" & "and " & CField(cobField2.Text) & CSymbol(cobSymbol2.Text) & " '" & CContent(txtContent2.Text) & "'" & "and " & CField(cobField3.Text) & CSymbol(cobSymbol3.Text) & " '" & CContent(txtContent3.Text) & "'"Set mrc = ExecuteSQL(txtSQL, Msgtext)Call Addmrc.CloseElseMsgBox "請(qǐng)輸入第二個(gè)組合條件"End IfEnd IfElseIf c(1) ThenIf cobRelation1.Text = "或" Then'0 or 1txtSQL = txtSQL & CField(cobField1.Text) & CSymbol(cobSymbol1.Text) & "'" & CContent(txtContent1.Text) & "'" & "or " & CField(cobField2.Text) & CSymbol(cobSymbol2.Text) & " '" & CContent(txtContent2.Text) & "'"Set mrc = ExecuteSQL(txtSQL, Msgtext)Call Addmrc.CloseElseIf cobRelation1.Text = "與" Then'0 and 1txtSQL = txtSQL & CField(cobField1.Text) & CSymbol(cobSymbol1.Text) & "'" & CContent(txtContent1.Text) & "'" & "and " & CField(cobField2.Text) & CSymbol(cobSymbol2.Text) & " '" & CContent(txtContent2.Text) & "'"Set mrc = ExecuteSQL(txtSQL, Msgtext)Call Addmrc.CloseElseMsgBox "請(qǐng)選擇組合關(guān)系"End IfEnd IfElseIf c(0) Then'0txtSQL = txtSQL & CField(cobField1.Text) & CSymbol(cobSymbol1.Text) & "'" & CContent(txtContent1.Text) & "'"Set mrc = ExecuteSQL(txtSQL, Msgtext)Call Addmrc.CloseElseMsgBox "請(qǐng)輸入第一條件"End IfEnd IfEnd If?
總結(jié)
以上是生活随笔為你收集整理的机房收费--组合查询的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 小教活动总结-VB即时通讯小程序
- 下一篇: SQL—已更新或删除的行值要么不能使该行