1. 程式人生 > >機房收費系統(七)——學生基本資訊維護

機房收費系統(七)——學生基本資訊維護

概述

學生基本資訊維護裡面所用到的知識點有查詢類,更準確的說是組合查詢。該知識點堪稱機房收費系統三大難點之一。那麼它的難到底難在哪裡?下面我們來逐一進行分析。

流程圖

這裡寫圖片描述
這裡寫圖片描述
通過上面兩張圖可以清晰的看到,查詢難在哪裡:
首先、我們需要進行判斷查詢是否為組合查詢,如果為否,那麼一切都變得簡單了。
其次、我們需要在已經是組合查詢的情況下,如何查詢的問題,這裡相對複雜,也正是本窗體的難點之處,我們需要先理清邏輯關係——至少需要我們填寫一個組合關係。
最後、在前面都已經判斷好的情況下還需要進行與或非的判斷,它的選擇不同將導致查詢結果有差異。
看似簡單的圖形,但是它的內部有著嚴密的結構邏輯,每一步的判斷都需要我們小心謹慎,把條件考慮充分。否則一個不完整的邏輯結構,將會使得程式無法執行。

重點程式碼

Private Sub cmdQuery_Click()
    Dim StutxtSQL As String
    Dim StuMsgtext As String
    Dim Stumrc As ADODB.Recordset

    StutxtSQL = "select*from student_info where"
     '在student_Info這張表中獲得整行記錄。其中*表示整行記錄,也可以換成你需要查詢的具體記錄。

    If Trim(Combo1.Text) = "" Or Trim(Combo2.Text) = "" Or Trim(Text1.Text
) = "" Then MsgBox "請將選項內容填寫完整!", vbOKOnly, "提示" Exit Sub Else StutxtSQL = StutxtSQL & "" & field(Combo1.Text) & "" & Combo2.Text & "'" & Trim(Text1.Text) & "'" If Combo7.Text <> "" Then If Combo3.Text = "" Or Combo4.Text
= "" Or Text2.Text = "" Then MsgBox "請將第二行選項內容填寫完整!", vbOKOnly, "提示" Exit Sub Else StutxtSQL = StutxtSQL & "" & field(Combo7.Text) = "" Or field(Combo3.Text) & "" & Combo4.Text & "'" & Trim(Text2.Text) & "'" If Combo8.Text <> "" Then If Combo5.Text = "" Or Combo6.Text = "" Or Text3.Text = "" Then MsgBox "請將第三行選項內容填寫完整!", vbOKOnly, "提示" Exit Sub Else StutxtSQL = StutxtSQL & "" & field(Combo8.Text) & "" & field(bombo5.Text) & "" & Trim(Combo6.Text) & "" & Trim(Text3.Text) & "'" End If End If End If End If Set Stumrc = ExecuteSQL(StutxtSQL, StuMsgtext) If Stumrc.EOF Then MsgBox "無該資料,請重新填寫!", vbInformation Text1.SetFocus Text1.Text = "" myflexgrid.Clear Exit Sub Else With myflexgrid .Rows = 1 .CellAlignment = 4 .TextMatrix(0, 0) = "學號" .TextMatrix(0, 1) = "姓名" .TextMatrix(0, 2) = "卡號" .TextMatrix(0, 3) = "金額" .TextMatrix(0, 4) = "系別" .TextMatrix(0, 5) = "年級" .TextMatrix(0, 6) = "班級" .TextMatrix(0, 7) = "性別" .TextMatrix(0, 8) = "狀態" .TextMatrix(0, 9) = "備註" .TextMatrix(0, 10) = "型別" .TextMatrix(0, 11) = "日期" .TextMatrix(0, 12) = "時間" Do While Not Stumrc.EOF .Rows = .Rows + 1 .CellAlignment = 4 .TextMatrix(.Rows - 1, 0) = Trim(Stumrc.Fields(1)) .TextMatrix(.Rows - 1, 1) = Trim(Stumrc.Fields(2)) .TextMatrix(.Rows - 1, 2) = Trim(Stumrc.Fields(0)) .TextMatrix(.Rows - 1, 3) = Trim(Stumrc.Fields(7)) .TextMatrix(.Rows - 1, 4) = Trim(Stumrc.Fields(4)) .TextMatrix(.Rows - 1, 5) = Trim(Stumrc.Fields(5)) .TextMatrix(.Rows - 1, 6) = Trim(Stumrc.Fields(6)) .TextMatrix(.Rows - 1, 7) = Trim(Stumrc.Fields(3)) .TextMatrix(.Rows - 1, 8) = Trim(Stumrc.Fields(10)) .TextMatrix(.Rows - 1, 9) = Trim(Stumrc.Fields(8)) .TextMatrix(.Rows - 1, 10) = Trim(Stumrc.Fields(14)) .TextMatrix(.Rows - 1, 11) = Trim(Stumrc.Fields(12)) .TextMatrix(.Rows - 1, 12) = Trim(Stumrc.Fields(13)) Stumrc.MoveNext Loop End With End If End If End Sub

總結

其實在我們還不熟悉的情況下,做這樣的系統還是很有挑戰的。畢竟他有著嚴謹的邏輯結構,它不像一個簡單的小程式。我們走過的每一步,都將是成長路上的美好見證。

相關推薦

機房收費系統——學生基本資訊維護

概述 學生基本資訊維護裡面所用到的知識點有查詢類,更準確的說是組合查詢。該知識點堪稱機房收費系統三大難點之一。那麼它的難到底難在哪裡?下面我們來逐一進行分析。 流程圖 通過上面兩張圖可以清晰的看到,查詢難在哪裡: 首先、我們需要進行判斷查詢是

機房收費系統項目開發計劃

tro 外部 程序語言 友好 知識 add sql 數據庫 名稱 項目開發計劃 1引言 1.1編寫目的 主要對開發機房收費系統的費用、時間、進度、人員組織、硬件設備的配置、開發環境和執行環境的配置進行說明。為開發的下一步做準備。預期讀者是系統分析員和開發者。

機房收費系統-組合查詢

【前言】 一拖再拖,組合查詢終於做完了,並且弄明白了其中的含義。下面就以操作員的工作記錄窗體為例,來總結一下組合查詢吧! 【內容】 組合查詢: 第一行(可單獨查詢)即為第一個條件,第二行為第二個條件,第三行為第三個條件。利用“組合關係”控制元件將條件連線起來,進行組合查詢。 導圖 這張

機房收費系統-上下機

【前言】 開始做機房時間也不短了,也看了不少大佬的部落格,但是真的是每個人有每個人的思路,所以我也有了自己的思路。剛開始的時候沒有什麼思路,不知道如何下手,只有靜下心來,一點點往下走,才能理清自己的思路。有些地方可能還存在不足,望指點。 【內容】 上機和下機導圖 上機程式碼 Priv

機房收費系統-命名規範

【前言】 命名規範至關重要,做好機房系統的第一步工作。 【內容】 1.主選單命名 一般使用者:GeneralUser 學生檢視餘額:StuInquiryBalanceMenu 學生檢視上機記錄:StuInquiryLineRecordMenu 學生充值記錄查詢:StuInquiryRec

機房收費系統------登入&修改

前言 進行機房也有一段時間了,一直處於走迷宮的狀態不知從何入手。從生活中出發,我們在使用某個系統時,一般情況下最先進入該系統的登入頁面。現在輪到自己敲系統了,當然也是從登入開始啦。 正文 機房收費系統登入窗體的思路,和有原始碼的學生系統的思路是大同

機房收費系統——組合查詢

對於敲完機房收費系統的我們對於組合查詢應該都不在陌生了吧。想想當時我在敲之前聽別人說它比較麻煩的時候,我足足停了兩天才開始對這部分下手。一下手就感覺我之前在學生資訊管理系統裡面見過啊(根據姓名、班級、

機房收費系統---組合查詢

  涉及的窗體有學生基本資訊維護,學生上機記錄查詢,學生上機統計查詢初次見到組合查詢介面,有種似曾相識的感覺。沒錯,我們在學生資訊管理系統裡面見過類似的。也可以說我們已經接觸過組合查詢了。不同的是這次的組合查詢要多一點,相對來講複雜一點。今天我就用學生基本資訊維

機房收費系統-結賬

【前言】 在寫結賬程式碼之前,我們要明白結賬的含義和思路。 含義:是誰來結賬?結的是誰的賬?這是必須弄明白的。 結賬:是管理員來結賬,管理員結的是操作員的賬。 之前總是聽別人說結賬是個難點,所以心裡有點抵觸,並且不想去做,感覺自己不會做,弄不明白。只有做過之後才

機房收費系統—再看組合查詢

寫在前面: 組合查詢顧名思義是多條件查詢,關鍵就是確定在一定的條件下需要查詢與這個條件想對應的內容,確定好查詢內容之後,每一次查詢都是在上一個條件基礎上加一個條件的查詢。 下面就看一下機房中複合查詢

機房收費系統——退卡操作

在敲機房的時候,感覺退卡挺簡單的,很快的完成了。但是驗收的時候,它卻出問題了——該卡正在上機,可以退卡,但是卻沒有對下機進行處理。現在重新來實現這個功能,其實仍然也是很簡單的。 一、整理思路    

機房收費系統——登入介面

概述 機房收費系統其實和學生資訊管理系統差不多,難度麼有增加多少。關鍵在於需要我們在敲程式碼之前把思路搞清楚,程式碼並不是什麼大事。這裡我就採用了畫流程圖的形式,把要實現的功能都畫出來,然後進行程式碼的編輯。下面就來分享我的思路和部分程式碼。 流程圖

機房收費系統1-註冊控制元件

根據師哥給的機房收費系統使用說明:在cmd命令中輸入“regsvr +路徑+控制元件名稱,相信大家在操作的時候都有如下試水。 看看犯的錯誤都覺得可笑,把”+“都給人家輸上了。圖中的錯誤提示框是最後一

機房收費系統之下機退卡

今天我又回顧了一下 機房管理系統,看見了我熟悉的花費了我三天才敲好的窗體(當然想了兩天),然後今天我就來總結一下下機退卡吧!  第一句話是讓子窗體在父窗體中的圖片框裡顯示! 其他的然後就是定義函式名

機房收費系統--學生基本資訊維護組合查詢

對於這個窗體來說,主要的功能就是實現“組合查詢”,什麼是組合查詢? 組合查詢: 多數SQL查詢都只包含從一個或多個表中返回資料的單條 SELECT 語句。MySQL也允許執行多個查詢(多條 SELECT 語句),並將結果作為單個查詢結果集返回。這些組合查詢通常稱為並(

機房收費系統VB.NET個人版總結

blog gb2 watermark ast 做到 解決 content 結果 avi 重構版個人機房收費系統大概從暑假開學開始進行。花了不到一個半月的時間才完畢。以下對我在重構過程中的一寫理解。 1、系統設計一個非常重要的目的就是重用。而要做

機房收費系統——學生基本資訊維護

這個窗體是一個簡單的組合查詢窗體,之所以它簡單是因為它沒有涉及到時間控制元件,所以可以節省不少程式碼量,但是它有一個難點就是把選中修改,把修改後的資訊返還到這個窗體中,所以這個窗體也涉及到另外一個窗體! 程式碼展示: 學生基本資訊維護 Public TmpCardno As St

機房收費系統命名篇

主介面選單編輯器命名如下 PS:(用menu作字尾) 一般使用者   GeneralUser 學生檢視餘額 InquiryBalance學生檢視上機記錄 InquiryLineRecord學生充值記錄查詢  InquiryRechargeRec

機房收費系統準備篇

開始機房前,我預計先學習觀看一下11期師哥師姐打包給12期師哥師姐的機房系統,於是我安裝後點擊開始,出現錯誤: 執行錯誤’91’:未設定物件變數或with block變數 這個是因為沒有連線到資料庫,所以我需要配置ODBC,配置過程如下: 在這裡我們看到了,

機房系統——【報表】

    在機房收費系統的專案裡,管理員級別有兩個功能是日結賬單和周結賬單,在這裡首次接觸到了報表。那麼,什麼是報表呢?怎麼做報表呢?怎麼使用報表呢?接下來一一介紹。 What?     報表就是員工向上級報告情況的表格。簡單的說