No3 組合查詢 機房收費

2021-07-11 19:47:57 字數 1602 閱讀 2797

怎麼說呢,之前的組合查詢,現在想起來都是很痛心的,剛開始我單蠢的想要用case語句來查,於是我硬著頭皮往下寫,結果呢,乙個條件還沒有查出來的時候,我的case語句就用了20多個了,於是我果斷放棄了這個方法,看這麼多的case,我還是很頭暈的,實現乙個功能重複使用乙個**數量超過一定的界限那就是很有問題的。

dd(1) = true

if dd(0) then

txtsql = txtsql & "and student_name = '" & txtname.text & "'"

else

txtsql = txtsql & "student_name = '" & txtname.text & "'"

endif

上面只是一部分的**,但是足以說明問題了,這裡的查詢語句,相當於在原來的基礎上再加查詢條件,或許是所謂的拼接查詢了,關鍵在與什麼呢,就是要明確你的查詢條件什麼時候加,處理好這個就沒有什麼問題了。

要實現的功能是這樣的:

txtsql = "select * from 表名稱 where 列名稱 = '" & 查詢條件 & "'

"

txtsql = txtsql & "and 列名稱 = '" & 查詢條件 &  "'"

例如現在從上機表中查詢

txtsql = "select from line_info where ( " & combocondition1.tag & combooperate1.tag & "  '" & content1.text & "'"
if comborelation1.text

<> ""

then

txtsql = txtsql & " " & comborelation1.tag & " " & combocondition2.tag & combooperate2.tag & " '" & content2.text & "'"

endif

txtsql = txtsql & ")"

上面這裡為什麼要加乙個括號呢,之前的組合查詢的條件一直出錯,比如上面的條件是:a 或 b 與 c 這是有先後順序的,但是and優先順序大於or,這樣的話,我們應該怎麼辦呢,加乙個括號就可以了(a or b)and c,上面的括號就是這個道理。

if comborelation2.text

<> ""

then

txtsql = txtsql & " " & comborelation1.tag & " " & combocondition3.tag & combooperate.tag & " '" & content3.text & "'"

endif

有很多方法,我們學習的時候要對比著學,基本的語句可以實現很強大的功能,就是看你要如何去變換一下,學著多總結,多使用,同時也要多想別人學習,學會利用更多的資源。

(五)組合查詢 機房收費系統

前提 組合查詢的思路需要理清,在理清思路的同時,按照先英的想法去執行 一 流程圖 思路 1.用selectcase進行文字轉換 select case n case text1.text 卡號 b cardno case text1.text 姓名 b studentname case text1....

機房收費系統 組合查詢

機房收費系統在磕磕絆絆中過來了,這期間遇到問題,解決問題,最後收穫的特別多,在敲得過程中,不斷的學習新知識,應該說組合查詢是收費系統的乙個小難點了吧,起初我是真的不知道該從 下手,總是有種剪不斷理還亂的感覺,分析分析就繞進去了,我總是把問題想的很複雜,其實只要一句 語句,一切都解決了,根本用不到好多...

機房收費系統 組合查詢

關於組合查詢,真的是乙個令人頭疼的東西,但是當自己突然間的做出來時,卻莫名的有種貌似又不是很難得感覺。昨天弄了整整一下午,今天的下午終於在除錯了兩個小時做出來了。首先是查到了一些關於組合查詢的部落格,有乙個共同的特點就是都要獲得使用者所選的欄位名並轉化成資料庫表中的欄位名,這樣實現了人機共同語言的轉...