版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 摘 要</b></p><p> 學(xué)生管理系統(tǒng)對(duì)于學(xué)校的決策者和管理者來(lái)說(shuō)都至關(guān)重要,是一個(gè)教育單位不可缺少的管理工具,能夠?yàn)橛脩?hù)提供充足的信息和快捷的查詢(xún)手段。本學(xué)生管理系統(tǒng)是基于VB技術(shù)的系統(tǒng)。包括個(gè)人情況模塊、考勤模塊、獎(jiǎng)學(xué)金模塊、等級(jí)考試模塊、個(gè)人成績(jī)模塊、選修成績(jī)模塊、個(gè)人交費(fèi)情況模塊、用于控制操作級(jí)別的用戶(hù)管理模塊。在這些模塊中,除了基本的刪
2、除、添加、查詢(xún)外,有的模塊還加了更加詳細(xì)的查詢(xún)內(nèi)容。</p><p> 關(guān)鍵詞:學(xué)生管理系統(tǒng);模塊;查詢(xún)</p><p><b> Abstract</b></p><p> The student management system is vital for decision-makers and managers of schools
3、. It is an indispensable management tool which can provide sufficient information and quick query measure for them. This student management system is based on VB technology, includes the individual situation module, the
4、checking attendance module,the scholarship module,the rank test module,the individual performance module, the choose course result module,the individual paying-fee situation module,the user manageme</p><p>
5、 Keywords:The Sudent Mnagement System; Module; Query</p><p><b> 目 錄</b></p><p> 第一章 界面設(shè)計(jì).....................................................1</p><p> 1.1 菜單欄的設(shè)計(jì)....
6、................................................2</p><p> 1.2 工具欄的設(shè)計(jì)....................................................4</p><p> 1.3 狀態(tài)欄的設(shè)計(jì)....................................................
7、5</p><p> 第二章 模塊設(shè)計(jì)................................................7</p><p> 2.1 個(gè)人情況模塊....................................................7</p><p> 2.2 考勤模塊 .....................
8、.................................18</p><p> 2.3 獎(jiǎng)學(xué)金模塊....................................................25</p><p> 2.4 等級(jí)考試模塊 個(gè)人成績(jī)模塊 選修成績(jī)模塊....................29</p><p> 2.5 個(gè)
9、人交費(fèi)情況...................................................37</p><p> 2.6 用戶(hù)管理模塊...........................................39</p><p> 2.7 登陸模塊.....................................................
10、..43</p><p> 2.8 ADO控件........................................................45</p><p> 結(jié)束語(yǔ)......................................................46</p><p> 致謝..................
11、.................................................47</p><p> 參考文獻(xiàn)...............................................................48</p><p><b> 界面設(shè)計(jì)</b></p><p> 學(xué)生管理系統(tǒng)是一
12、個(gè)教育單位不可缺少的部分,它的內(nèi)容對(duì)于學(xué)校的決策者和管理者來(lái)說(shuō)都至關(guān)重要,所以學(xué)生檔案管理系統(tǒng)應(yīng)該能夠?yàn)橛脩?hù)提供充足的信息和快捷的查詢(xún)手段。一直以來(lái)人們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多缺點(diǎn):效率低、保密性差,另外時(shí)間一長(zhǎng),將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來(lái)了不少的困難。</p><p> 隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人
13、類(lèi)社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。使用計(jì)算機(jī)對(duì)學(xué)生檔案信息進(jìn)行管理,具有手工管理無(wú)法比擬的優(yōu)點(diǎn)。如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等,這些優(yōu)點(diǎn)能夠極大地提高學(xué)生檔案管理的效率。</p><p> 本學(xué)生管理系統(tǒng)包括個(gè)人情況模塊、考勤模塊、獎(jiǎng)學(xué)金模塊、等級(jí)考試模塊、個(gè)人成績(jī)模塊、選修成績(jī)模塊、個(gè)人交費(fèi)情況模塊、用于控制操作級(jí)別的用戶(hù)管理模塊。在這些模塊中,除了基本的刪除、
14、添加、查詢(xún)外,有的模塊還加了更加詳細(xì)的查詢(xún)內(nèi)容。</p><p><b> 菜單欄的設(shè)計(jì)</b></p><p> 在窗體的標(biāo)題欄下顯示的是菜單欄,它包含一個(gè)或多個(gè)菜單標(biāo)題。在程序運(yùn)行時(shí),當(dāng)用戶(hù)選擇某個(gè)菜單標(biāo)題時(shí)會(huì)下拉出一個(gè)菜單,菜單中的菜單項(xiàng)可以是命令、選項(xiàng)、分隔條或子菜單標(biāo)題。每個(gè)菜單項(xiàng)都是一個(gè)控件,與其他控件一樣也有自己的屬性和事件。菜單項(xiàng)的每個(gè)屬性都能設(shè)置
15、和查看,如name(名稱(chēng))和caption(標(biāo)題)屬性等。每個(gè)菜單項(xiàng)只能響應(yīng)一個(gè)事件,即Click事件。具體步驟如下:</p><p> ?。?)在設(shè)計(jì)狀態(tài),選擇工具“菜單下的菜單編輯器(Ctrl+E)”命令,會(huì)出現(xiàn)菜單編輯器窗口。</p><p> ?。?)在菜單設(shè)計(jì)窗口中,按下表對(duì)每一個(gè)菜單項(xiàng)輸入標(biāo)題、控制名稱(chēng)和相應(yīng)的快捷鍵。如表1-1菜單項(xiàng)的設(shè)計(jì)。</p><p&
16、gt; 表1-1 菜單項(xiàng)的設(shè)置</p><p> 當(dāng)完成所有輸入工作后,選擇“確定”命令按鈕,就完成了整個(gè)菜單的建立工作,然后給各個(gè)菜單的Click事件中寫(xiě)入代碼。</p><p><b> 工具欄的設(shè)計(jì)</b></p><p> 工具欄是為用戶(hù)提供了應(yīng)用程序中最常用的菜單命令的快速訪問(wèn)方法,進(jìn)一步增強(qiáng)應(yīng)用程序的菜單界面,工具欄制作的方
17、法是將ToolBar、ImageList組合使用。創(chuàng)建工具欄的步驟是:</p><p> ?。?)在ImageList控件中添加所需的圖像。</p><p> ImageList控件不單獨(dú)使用,專(zhuān)門(mén)為其他控件提供圖像庫(kù),是一個(gè)圖像容器控件。在窗體上增加ImageList控件后,選中該控件,單擊右鍵,從彈出的快捷菜單中選擇“屬性”,然后在“屬性頁(yè)”對(duì)話框選擇“圖像”標(biāo)簽,在圖像框中插入圖像
18、,每個(gè)圖像的屬性見(jiàn)表1-2。</p><p> 表1-2 控件屬性的設(shè)置</p><p> (2)在ToolBar控件中創(chuàng)建Button對(duì)象。</p><p> ToolBar控件中的每個(gè)按鈕的圖像都來(lái)自ImageList對(duì)象中插入的圖像。</p><p><b> ?、贋楣ぞ邫谶B接圖像</b></p>
19、;<p> 在窗體上增加ToolBar控件后,打開(kāi)“屬性頁(yè)”對(duì)話框,選擇“通用”標(biāo)簽,對(duì)其各項(xiàng)進(jìn)行設(shè)置,一般取默認(rèn)值。</p><p><b> ②為工具欄增加按鈕</b></p><p> 在“屬性頁(yè)”對(duì)話框中選擇“按鈕”標(biāo)簽,單擊“插入按鈕”可以在工具欄增加按鈕,然后對(duì)各屬性進(jìn)行設(shè)置。</p><p> ?。?)在But
20、tonClick事件中用Select Case語(yǔ)句對(duì)各按鈕進(jìn)行相應(yīng)的編程。</p><p><b> 狀態(tài)欄的設(shè)計(jì)</b></p><p> 狀態(tài)欄用來(lái)顯示系統(tǒng)信息和對(duì)用戶(hù)的提示。創(chuàng)建狀態(tài)欄的步驟是:</p><p><b> (1)建立狀態(tài)欄</b></p><p> 設(shè)計(jì)時(shí),在窗體上增加
21、Statusbar控件后,打開(kāi)其“屬性面”對(duì)話框,選擇“窗格”標(biāo)簽,設(shè)置5個(gè)窗格,各窗格屬性設(shè)置如表1-3。</p><p> 表1-3 Statusbar控件屬性設(shè)置</p><p> ?。?)運(yùn)行時(shí)改變狀態(tài)欄</p><p> 運(yùn)行時(shí),能重新設(shè)置窗格Panel對(duì)象以反映不同的功能,除第一個(gè)窗格外其它的窗格都通過(guò)編</p><p>&l
22、t;b> 程來(lái)實(shí)現(xiàn)。</b></p><p><b> 模塊設(shè)計(jì)</b></p><p> 本學(xué)生管理系統(tǒng)結(jié)構(gòu)圖,如圖2-1所示:</p><p> 圖2-1 學(xué)生管理系統(tǒng)結(jié)構(gòu)圖</p><p> 2.1 個(gè)人情況模塊</p><p> 個(gè)人情況模塊有三個(gè)小的模塊組成
23、:修改與添加,刪除,查詢(xún)。</p><p> 2.1.1 個(gè)人基本情況添加</p><p> 界面如圖2-2所示:</p><p> 圖2-2 個(gè)人信息添加</p><p> 個(gè)人基本情況添加模塊的設(shè)計(jì)思想是首先看輸入的內(nèi)容,即個(gè)人信息是不是空的。如果是空的,則不允許添加;如果不是空的,那么在個(gè)人情況表與個(gè)人詳細(xì)情況表中加入界面上所輸
24、入的信息。</p><p> 它的添加功能是用下面的代碼實(shí)現(xiàn)的:</p><p> If Trim(Text1) = "" Or Trim(Text2) = "" Or Trim(Text3) = "" Or Trim(Text4) = "" Or Trim(Text5) = "" Or
25、 Trim(Text6) = "" Or Trim(Text7) = "" Or Trim(Text9) = "" Or Trim(Text10) = "" Or Trim(Text11) = "" Then</p><p> MsgBox "所有信息都不能為空!"</p>&l
26、t;p><b> Exit Sub</b></p><p><b> End If</b></p><p> Adodc1.RecordSource = "select * from jibenqingkuang"</p><p> Adodc1.Refresh</p>&l
27、t;p> Adodc1.Recordset.AddNew</p><p> Adodc1.Recordset.Fields("學(xué)號(hào)") = Trim(Text1)</p><p> Adodc1.Recordset.Fields("姓名") = Trim(Text2)</p><p> Adodc1.Record
28、set.Fields("性別") = Trim(Text3)</p><p> Adodc1.Recordset.Fields("班級(jí)") = Trim(Text4)</p><p> Adodc1.Recordset.Fields("專(zhuān)業(yè)") = Trim(Text5)</p><p> Adodc
29、1.Recordset.Fields("年齡") = Val(Trim(Text6))</p><p> Adodc1.Recordset.Fields("出生日期") = Trim(Text7)</p><p> Adodc1.Recordset.Fields("政治面貌") = Trim(Combo1.Text)</
30、p><p> Adodc1.Recordset.Update</p><p> Adodc1.Recordset.Close</p><p> Adodc1.RecordSource = "select * from xiangxiqingkuang"</p><p> Adodc1.Refresh</p>
31、<p> Adodc1.Recordset.AddNew</p><p> Adodc1.Recordset.Fields("姓名") = Trim(Text2)</p><p> Adodc1.Recordset.Fields("身份證號(hào)") = Trim(Text9)</p><p> Adodc1.
32、Recordset.Fields("生源所在地") = Trim(Text10)</p><p> Adodc1.Recordset.Fields("家庭所在地") = Trim(Text11)</p><p> Adodc1.Recordset.Update</p><p> MsgBox "個(gè)人基本情況和詳
33、細(xì)情況的記錄添加成功!"</p><p> 2.1.2 個(gè)人基本情況的查詢(xún)</p><p> 界面如圖2-3所示:</p><p> 圖2-3 基本情況查詢(xún)</p><p> 設(shè)計(jì)思想是先在條件中輸入要查找的條件,然后按所輸入的條件用SQL語(yǔ)言的SELECT語(yǔ)句進(jìn)行查詢(xún)。在查詢(xún)之前,要看看輸入的條件是不是為空,如果為空,出現(xiàn)
34、提示,“沒(méi)有輸入條件,請(qǐng)輸入!”然后,在根據(jù)姓名條件的精確或是模糊進(jìn)行查詢(xún)。查詢(xún)到的個(gè)人信息,放到具體的文本框中。它的四個(gè)按鈕用來(lái)控制得到的記錄集的上下移動(dòng)。中間自己定義了一個(gè)過(guò)程move1,用來(lái)更新文本框的數(shù)據(jù)。部分代碼如下:</p><p><b> 查詢(xún)代碼:</b></p><p> Dim sql As String</p><p&g
35、t;<b> sql = "1"</b></p><p> If Trim(Text1) = "" And Trim(Text2) = "" And Trim(Text3) = "" And Trim(Text4) = "" And Trim(Combo1.Text) = "忽略
36、" And Trim(Combo2.Text) = "忽略" Then</p><p> MsgBox "沒(méi)有輸入條件,請(qǐng)輸入!"</p><p><b> Exit Sub</b></p><p><b> End If</b></p><p&g
37、t; If Trim(Text1) <> "" Then</p><p> If Option1.Value Then</p><p> sql = sql + " and 姓名='" & Text1 & "'"</p><p><b> Els
38、e</b></p><p> sql = sql + " and 姓名 like '%" & Text1 & "%'"</p><p><b> End If</b></p><p><b> End If</b></p>
39、;<p> If Trim(Text2) <> "" Then sql = sql + " and 年齡" & Trim(Combo3.Text) & Text2 & ""</p><p> If Trim(Text3) <> "" Then sql = sql + &
40、quot; and 學(xué)號(hào)" & Trim(Combo4.Text) & "'" & Text3 & "'"</p><p> If Trim(Text4) <> "" Then sql = sql + " and 班級(jí)='" & Text4 &am
41、p; "'"</p><p> If Trim(Combo1.Text) <> "忽略" Then sql = sql + " and 專(zhuān)業(yè)='" & Trim(Combo1.Text) & "'"</p><p> If Trim(Combo2.Text
42、) <> "忽略" Then sql = sql + " and 性別='" & Trim(Combo2.Text) & "'"</p><p> Adodc1.RecordSource = "select * from jibenqingkuang where " & sql&l
43、t;/p><p> Adodc1.Refresh</p><p> If Adodc1.Recordset.EOF Then</p><p> MsgBox "jibenqingkuang表,沒(méi)有滿足條件的記錄!"</p><p> Command3.Enabled = False</p><p&g
44、t; Command4.Enabled = False</p><p> Command5.Enabled = False</p><p> Command6.Enabled = False</p><p><b> Else</b></p><p> Command3.Enabled = False</
45、p><p> Command4.Enabled = False</p><p> Command5.Enabled = True</p><p> Command6.Enabled = True</p><p><b> move1</b></p><p><b> End If&
46、lt;/b></p><p> If Adodc1.Recordset.BOF Then</p><p> Command3.Enabled = False</p><p> Command4.Enabled = False</p><p><b> Else</b></p><p>
47、; Command3.Enabled = True</p><p> Command4.Enabled = True</p><p><b> End If</b></p><p> Command5.Enabled = True</p><p> Command6.Enabled = True</p&g
48、t;<p> Adodc1.Recordset.MovePrevious</p><p><b> move1</b></p><p> move1的代碼如下:</p><p> Text6.Text = Adodc1.Recordset.Fields("學(xué)號(hào)")</p><p>
49、; Text7.Text = Adodc1.Recordset.Fields("姓名")</p><p> Text8.Text = Adodc1.Recordset.Fields("性別")</p><p> Text9.Text = Adodc1.Recordset.Fields("班級(jí)")</p><
50、;p> Text10.Text = Adodc1.Recordset.Fields("年齡")</p><p> Text11.Text = Adodc1.Recordset.Fields("專(zhuān)業(yè)")</p><p> Text12.Text = Adodc1.Recordset.Fields("政治面貌")</
51、p><p> Text13.Text = Adodc1.Recordset.Fields("出生日期")</p><p> Adodc2.RecordSource = "select * from xiangxiqingkuang where 姓名='" & Trim(Text7.Text) & "'&quo
52、t;</p><p> Adodc2.Refresh</p><p> If Adodc2.Recordset.EOF = True Then</p><p> MsgBox "xiangxiqingkuang表,沒(méi)有滿足條件的記錄!"</p><p><b> Exit Sub</b><
53、;/p><p><b> Else</b></p><p> Text5.Text = Adodc2.Recordset.Fields("獎(jiǎng)懲")</p><p> Text14.Text = Adodc2.Recordset.Fields("身份證號(hào)")</p><p> T
54、ext15.Text = Adodc2.Recordset.Fields("生源所在地")</p><p> Text16.Text = Adodc2.Recordset.Fields("家庭所在地")</p><p><b> End If</b></p><p> 另外,界面中還有一個(gè)修改按鈕,
55、是用來(lái)對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行更正。如果不點(diǎn)這個(gè)按鈕,就不能對(duì)文本中的數(shù)據(jù)進(jìn)行修改,修改之后還需點(diǎn)保存按鈕,寫(xiě)到數(shù)據(jù)庫(kù)中。否則不能寫(xiě)到數(shù)據(jù)庫(kù)中。</p><p><b> 修改按鈕代碼如下:</b></p><p> If gly = False Then</p><p> MsgBox "你不是管理員,此按鈕你不能使用!"
56、;</p><p><b> Exit Sub</b></p><p><b> End If</b></p><p> If Command7.Caption = "修改" Then</p><p> Text5.Locked = False</p>&l
57、t;p> Text8.Locked = False</p><p> Text9.Locked = False</p><p> Text10.Locked = False</p><p> Text11.Locked = False</p><p> Text12.Locked = False</p><
58、p> Text13.Locked = False</p><p> Text14.Locked = False</p><p> Text15.Locked = False</p><p> Text16.Locked = False</p><p> Command7.Caption = "保存"<
59、/p><p><b> Else</b></p><p> Text5.Locked = True</p><p> Text8.Locked = True</p><p> Text9.Locked = True</p><p> Text10.Locked = True</p>
60、;<p> Text11.Locked = True</p><p> Text12.Locked = True</p><p> Text13.Locked = True</p><p> Text14.Locked = True</p><p> Text15.Locked = True</p>&l
61、t;p> Text16.Locked = True</p><p> Command7.Caption = "修改"</p><p> Adodc1.Recordset.Fields("學(xué)號(hào)") = Text6.Text</p><p> Adodc1.Recordset.Fields("姓名"
62、;) = Text7.Text</p><p> Adodc1.Recordset.Fields("性別") = Text8.Text</p><p> Adodc1.Recordset.Fields("班級(jí)") = Text9.Text</p><p> Adodc1.Recordset.Fields("年齡
63、") = Text10.Text</p><p> Adodc1.Recordset.Fields("專(zhuān)業(yè)") = Text11.Text</p><p> Adodc1.Recordset.Fields("政治面貌") = Text12.Text</p><p> Adodc1.Recordset.Field
64、s("出生日期") = Text13.Text</p><p> Adodc2.Recordset.Fields("獎(jiǎng)懲") = Text5.Text</p><p> Adodc2.Recordset.Fields("身份證號(hào)") = Text14.Text</p><p> Adodc2.Reco
65、rdset.Fields("生源所在地") = Text15.Text</p><p> Adodc2.Recordset.Fields("家庭所在地") = Text16.Text</p><p> Adodc1.Recordset.Update</p><p> Adodc2.Recordset.Update<
66、/p><p><b> End If</b></p><p> 在瀏覽表中單擊,瀏覽之后,就可以看到個(gè)人情況的所有資料。用上一條、下一條、首條、末條四個(gè)按鈕,就可以完成瀏覽操作。</p><p> 刪除個(gè)人情況的設(shè)計(jì)思想是,首先根據(jù)用戶(hù)輸入的查詢(xún)條件(姓名可以是姓氏,也可以是名字,也就是說(shuō)可以進(jìn)行精確的查詢(xún),也可以進(jìn)行模糊的查詢(xún)。學(xué)號(hào)也是,可
67、以根據(jù)是等于學(xué)號(hào),還是一個(gè)范圍來(lái)找一個(gè)人,還是一批人的信息。),找到要?jiǎng)h除的人的信息,然后詢(xún)問(wèn)用戶(hù)是否真的要?jiǎng)h除。用戶(hù)回答是,就把用戶(hù)有關(guān)的所有滿足條件的記錄都刪除。用戶(hù)回答否之后,不進(jìn)行任何操作。</p><p> 2.1.3 個(gè)人情況刪除</p><p> 界面如圖2-4所示:</p><p> 圖2-4個(gè)人情況刪除</p><p>
68、; 刪除按鈕的代碼如下;</p><p> Dim sql As String</p><p> Text1 = Trim(Text1)</p><p> Text2 = Trim(Text2)</p><p> Text3 = Trim(Text3)</p><p> Text4 = Trim(Text4
69、)</p><p> If Text1 = "" And Text2 = "" And Text3 = "" And Text4 = "" Then</p><p> MsgBox "請(qǐng)輸入條件! "</p><p><b> Exit Sub<
70、/b></p><p><b> End If</b></p><p><b> sql = "1"</b></p><p> If Trim(Text1) <> "" Then</p><p> If Combo1.Text = &
71、quot;精確" Then</p><p> sql = sql + " and 姓名='" & Text1 & "'"</p><p><b> Else</b></p><p> sql = sql + " and 姓名 like '
72、%" & Text1 & "%'"</p><p><b> End If</b></p><p><b> End If</b></p><p> If Option1.Value Then</p><p> If Text2 <
73、> "" Then sql = sql + " and 學(xué)號(hào)='" & Text2 & "'"</p><p><b> Else</b></p><p> If Text3 <> "" Then sql = sql + "
74、and 學(xué)號(hào)>='" & Text3 & "'"</p><p> If Text4 <> "" Then sql = sql + " and 學(xué)號(hào)<='" & Text4 & "'"</p><p><b
75、> End If</b></p><p> Adodc1.RecordSource = "select * from jibenqingkuang where " & sql</p><p> Adodc1.Refresh</p><p> If Adodc1.Recordset.EOF Then</p&
76、gt;<p> MsgBox "沒(méi)有找到要找的信息!"</p><p><b> Exit Sub</b></p><p><b> End If</b></p><p> n = MsgBox("如果要?jiǎng)h除此人的基本情況,我們將把與此人有關(guān)的所有信息全部刪除!"
77、;, 36, "確定嗎?")</p><p> If n = vbYes Then</p><p> Do While Not Adodc1.Recordset.EOF</p><p> xm = Adodc1.Recordset.Fields("姓名")</p><p> xh = Adodc
78、1.Recordset.Fields("學(xué)號(hào)")</p><p> Adodc1.Recordset.Delete</p><p> Adodc1.Recordset.Update</p><p> Adodc2.RecordSource = "select * from xiangxiqingkuang where 姓名=
79、39;" & xm & "'"</p><p> Adodc2.Refresh</p><p> Do While Not Adodc2.Recordset.EOF</p><p> Adodc2.Recordset.Delete</p><p> Adodc2.Recordset
80、.Update</p><p> Adodc2.Recordset.MoveNext</p><p> If Adodc2.Recordset.EOF Then Exit Do</p><p><b> Loop</b></p><p> Adodc2.RecordSource = "select *
81、from jianxuejin where 學(xué)號(hào)='" & xh & "'"</p><p> Adodc2.Refresh</p><p> Do While Not Adodc2.Recordset.EOF</p><p> Adodc2.Recordset.Delete</p>
82、<p> Adodc2.Recordset.Update</p><p> Adodc2.Recordset.MoveNext</p><p> If Adodc2.Recordset.EOF Then Exit Do</p><p><b> Loop</b></p><p> Adodc2.Re
83、cordSource = "select * from denjikaoshi where 學(xué)號(hào)='" & xh & "'"</p><p> Adodc2.Refresh</p><p> Do While Not Adodc2.Recordset.EOF</p><p> Adodc
84、2.Recordset.Delete</p><p> Adodc2.Recordset.Update</p><p> Adodc2.Recordset.MoveNext</p><p> If Adodc2.Recordset.EOF Then Exit Do</p><p><b> Loop</b><
85、;/p><p> Adodc2.RecordSource = "select * from kaoqinbiao where 學(xué)號(hào)='" & xh & "'"</p><p> Adodc2.Refresh</p><p> Do While Not Adodc2.Recordset.EOF
86、</p><p> Adodc2.Recordset.Delete</p><p> Adodc2.Recordset.Update</p><p> Adodc2.Recordset.MoveNext</p><p> If Adodc2.Recordset.EOF Then Exit Do</p><p>
87、<b> Loop</b></p><p> Adodc2.RecordSource = "select * from xuanxiuchengji where 學(xué)號(hào)='" & xh & "'"</p><p> Adodc2.Refresh</p><p> D
88、o While Not Adodc2.Recordset.EOF</p><p> Adodc2.Recordset.Delete</p><p> Adodc2.Recordset.Update</p><p> Adodc2.Recordset.MoveNext</p><p> If Adodc2.Recordset.EOF T
89、hen Exit Do</p><p><b> Loop</b></p><p> Adodc2.RecordSource = "select * from xuefeiqingkuang where 學(xué)號(hào)='" & xh & "'"</p><p> Adodc
90、2.Refresh</p><p> Do While Not Adodc2.Recordset.EOF</p><p> Adodc2.Recordset.Delete</p><p> Adodc2.Recordset.Update</p><p> Adodc2.Recordset.MoveNext</p><
91、;p> If Adodc2.Recordset.EOF Then Exit Do</p><p><b> Loop</b></p><p> Adodc2.RecordSource = "select * from xuexichengji where 學(xué)號(hào)='" & xh & "'&quo
92、t;</p><p> Adodc2.Refresh</p><p> Do While Not Adodc2.Recordset.EOF</p><p> Adodc2.Recordset.Delete</p><p> Adodc2.Recordset.Update</p><p> Adodc2.Rec
93、ordset.MoveNext</p><p> If Adodc2.Recordset.EOF Then Exit Do</p><p><b> Loop</b></p><p> Adodc1.Recordset.MoveNext</p><p> If Adodc1.Recordset.EOF Then
94、Exit Do</p><p><b> Loop</b></p><p><b> End If</b></p><p><b> 2.2 考勤模塊</b></p><p> 考勤模塊有三個(gè)小的模塊組成分別為:添加、刪除、查詢(xún)與修改。</p><p
95、> 2.2.1考勤表的添加</p><p> 界面如圖2-5所示:</p><p> 圖2-5 考勤表添加</p><p> 考勤表添加的設(shè)計(jì)思想是:首先要看看它的數(shù)據(jù)是不是完整,如果沒(méi)有輸入條件就給出提示。第二步,看看添加的這個(gè)人,他是不是現(xiàn)在的在校學(xué)生;如果是,才能添加;如果不是,就提示基本情況表中不存在此人,不能添加,并且退出此程序。第三步,看是
96、不是已經(jīng)添加過(guò)了,如果添加過(guò)了的話,數(shù)據(jù)將會(huì)出現(xiàn)冗余。如果沒(méi)有添加過(guò),就可以進(jìn)行添加了。添加成功之后,會(huì)出現(xiàn)一個(gè)提示:“‘學(xué)號(hào)’添加成功!”[4]。</p><p> 考勤表的添加按鈕的代碼如下:</p><p> If Trim(Text1) = "" Or Trim(Text2) = "" Or Trim(Text3) = "&qu
97、ot; Then MsgBox "請(qǐng)輸入內(nèi)容!": Exit Sub</p><p> Adodc1.RecordSource = "select * from jibenqingkuang where 學(xué)號(hào)='" & Trim(Text1) & "'"</p><p> Adodc1.Refr
98、esh</p><p> If Adodc1.Recordset.EOF Then MsgBox "不能添加,在基本情況表中沒(méi)有此人的基本信息!": Exit Sub</p><p> Adodc1.RecordSource = "select * from kaoqinbiao where 學(xué)號(hào)='" & Trim(Text1)
99、 & "' and 第n周='" & Trim(Combo1.Text) & "' and 星期幾='" & Trim(Combo3.Text) & "'"</p><p> Adodc1.Refresh</p><p> If Not Adodc
100、1.Recordset.EOF Then</p><p> MsgBox "考勤表中存在此學(xué)生此日的考勤情況,請(qǐng)重輸入或在查詢(xún)中修改!"</p><p><b> Exit Sub</b></p><p><b> End If</b></p><p> Adodc1.R
101、ecordSource = "select * from kaoqinbiao "</p><p> Adodc1.Refresh</p><p> Adodc1.Recordset.AddNew</p><p> Adodc1.Recordset.Fields("學(xué)號(hào)") = Trim(Text1)</p>
102、<p> If Len(Trim(Combo1.Text)) > 3 Then</p><p> Adodc1.Recordset.Fields("第n周") = Mid(Trim(Combo1.Text), 2, 2)</p><p><b> Else</b></p><p> Adodc1.
103、Recordset.Fields("第n周") = Mid(Trim(Combo1.Text), 2, 1)</p><p><b> End If</b></p><p> Adodc1.Recordset.Fields("節(jié)次") = Trim(Combo2.Text)</p><p> Ado
104、dc1.Recordset.Fields("星期幾") = Trim(Combo3.Text)</p><p> Adodc1.Recordset.Fields("總節(jié)數(shù)") = Trim(Text2.Text)</p><p> Adodc1.Recordset.Fields("缺課事由") = Trim(Text3.Tex
105、t)</p><p> Adodc1.Recordset.Update</p><p> MsgBox "學(xué)號(hào):" & Trim(Text1) & " 添加成功!"</p><p> 這個(gè)界面中的瀏覽按鈕用來(lái)讓用戶(hù)查看添加之后的所有表中的信息。它可以把表單放大,代碼如下:</p><p
106、> Adodc1.RecordSource = "select * from kaoqinbiao "</p><p> Adodc1.Refresh</p><p> If Command3.Caption = "瀏覽" Then</p><p> Form5.Height = 6030</p>
107、<p> Command3.Caption = "返回"</p><p><b> Else</b></p><p> Form5.Height = 3165</p><p> Command3.Caption = "瀏覽"</p><p><b>
108、End If</b></p><p> 2.2.2 刪除模塊</p><p> 刪除的設(shè)計(jì)思想和上一個(gè)模塊的設(shè)計(jì)思想一樣,都是先找到符合條件的記錄。然后,再進(jìn)行刪除。不過(guò)有一點(diǎn)不同的是,這個(gè)刪除條件之間的關(guān)系,可以是并且的關(guān)系,也可以是或者的關(guān)系。它用兩個(gè)單選按鈕來(lái)實(shí)現(xiàn)。</p><p> 界面如圖2-6所示:</p><p&g
109、t; 圖2-6 考勤表刪除</p><p><b> 核心代碼如下:</b></p><p> Dim sql As String</p><p> If Option2.Value Then sql = " 1"</p><p> If Trim(Text1) <> "
110、;" Then sql = sql + " and 學(xué)號(hào)='" & Trim(Text1) & "'"</p><p> If Trim(Text2) <> "" Then sql = sql + " and 總節(jié)次='" & Trim(Text2) &
111、"'"</p><p> If Trim(Text3) <> "" Then sql = sql + " and 缺課事由='" & Trim(Text3) & "'"</p><p> If Combo1.Text <> "忽略&q
112、uot; Then</p><p> If Len(Trim(Combo1.Text)) > 3 Then sql = sql + " and 第n周='" & Mid(Trim(Combo1.Text), 2, 2) & "'"</p><p><b> Else</b></p&
113、gt;<p> sql = sql + " and 第n周='" & Mid(Trim(Combo1.Text), 2, 1) & "'"</p><p><b> End If</b></p><p><b> End If</b></p>
114、<p> If Combo2.Text <> "忽略" Then sql = sql + " and 節(jié)次='" & Trim(Combo2.Text) & "'"</p><p> If Combo3.Text <> "忽略" Then sql = sql +
115、" and 總節(jié)數(shù)=" & Trim(Combo3.Text)</p><p><b> Else</b></p><p> sql = " 0"</p><p> If Trim(Text1) <> "" Then sql = sql + " or
116、 學(xué)號(hào)='" & Trim(Text1) & "'"</p><p> If Trim(Text2) <> "" Then sql = sql + " or 總節(jié)次='" & Trim(Text2) & "'"</p><p&
117、gt; If Trim(Text3) <> "" Then sql = sql + " or 缺課事由='" & Trim(Text3) & "'"</p><p> If Combo1.Text <> "忽略" Then</p><p> If L
118、en(Trim(Combo1.Text)) > 3 Then sql = sql + " or 第n周='" & Mid(Trim(Combo1.Text), 2, 2) & "'"</p><p><b> Else</b></p><p> sql = sql + " or
119、 第n周='" & Mid(Trim(Combo1.Text), 2, 1) & "'"</p><p><b> End If</b></p><p><b> End If</b></p><p> If Combo2.Text <> &q
120、uot;忽略" Then sql = sql + " or 節(jié)次='" & Trim(Combo2.Text) & "'"</p><p> If Combo3.Text <> "忽略" Then sql = sql + " or 總節(jié)數(shù)=" & Trim(Combo3.
121、Text)</p><p><b> End If</b></p><p> Adodc1.RecordSource = "select * from kaoqinbiao where " & sql</p><p> Adodc1.Refresh</p><p> If Adodc1
122、.Recordset.EOF Then</p><p> MsgBox "沒(méi)有滿足條件的記錄!請(qǐng)重輸入。"</p><p><b> Exit Sub</b></p><p><b> Else</b></p><p> Form7.Height = 5040</p
123、><p><b> End If</b></p><p> n = MsgBox("顯示的為滿足條件的記錄,是否真的要全部刪除!", 36, "刪除嗎?")</p><p> If n = vbYes Then</p><p> Do While Not Adodc1.Reco
124、rdset.EOF</p><p> Adodc1.Recordset.Delete</p><p> Adodc1.Recordset.Update</p><p> Adodc1.Recordset.MoveNext</p><p> If Adodc1.Recordset.EOF Then Exit Do</p>
125、<p><b> Loop</b></p><p> MsgBox "成功刪除!"</p><p><b> End If</b></p><p> 2.2.3 考勤表的查詢(xún)</p><p> 界面如圖2-7所示:</p><p>
126、圖2-7 考勤表查詢(xún)</p><p> 考勤表的查詢(xún)和個(gè)人情況表的查詢(xún)?cè)O(shè)計(jì)思想是一樣的。有一點(diǎn)不同的是,它也可以進(jìn)行模糊的查詢(xún)與精確的查詢(xún)。可以在表單界面的條件的關(guān)系框中進(jìn)行選擇。條件之間的關(guān)系是同時(shí),還是或者的關(guān)系。同樣,再輸入查詢(xún)條件的時(shí)候,在文本框中,要不輸入數(shù)據(jù)的規(guī)范格式,要不然就不輸入數(shù)據(jù)。不輸入數(shù)據(jù)的話,就不按此項(xiàng)查詢(xún),只有輸入了,才按輸入的數(shù)據(jù)進(jìn)行查找。</p><p>&
127、lt;b> 查詢(xún)的代碼如下:</b></p><p> Dim sql As String</p><p> If Option2.Value Then sql = " 1"</p><p> If Trim(Text1) <> "" Then sql = sql + " and
128、 學(xué)號(hào)='" & Trim(Text1) & "'"</p><p> If Trim(Text2) <> "" Then sql = sql + " and 總節(jié)次=" & Trim(Text2)</p><p> If Trim(Text3) <>
129、"" Then sql = sql + " and 缺課事由='" & Trim(Text3) & "'"</p><p> If Combo1.Text <> "忽略" Then sql = sql + " and 第n周='" & Trim(Mid(
130、Combo1.Text, 2, 2)) & "'"</p><p> If Combo2.Text <> "忽略" Then sql = sql + " and 節(jié)次='" & Trim(Combo2.Text) & "'"</p><p> If
131、 Combo3.Text <> "忽略" Then sql = sql + " and 星期幾='" & Trim(Combo3.Text) & "'"</p><p><b> Else</b></p><p> sql = " 0"<
132、;/p><p> If Trim(Text1) <> "" Then sql = sql + " or 學(xué)號(hào)='" & Trim(Text1) & "'"</p><p> If Trim(Text2) <> "" Then sql = sql + &q
133、uot; or 總節(jié)次=" & Trim(Text2)</p><p> If Trim(Text3) <> "" Then sql = sql + " or 缺課事由='" & Trim(Text3) & "'"</p><p> If Combo1.Text &
134、lt;> "忽略" Then sql = sql + " or 第n周='" & Trim(Mid(Combo1.Text, 2, 2)) & "'"</p><p> If Combo2.Text <> "忽略" Then sql = sql + " or 節(jié)次='
135、;" & Trim(Combo2.Text) & "'"</p><p> If Combo3.Text <> "忽略" Then sql = sql + " or 星期幾='" & Trim(Combo3.Text) & "'"</p>&
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于vb學(xué)生學(xué)籍管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 基于vb的學(xué)生管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- [畢業(yè)設(shè)計(jì)資料]vb學(xué)生管理系統(tǒng)a畢業(yè)資料
- vb畢業(yè)設(shè)計(jì)--學(xué)生信息管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)----基于vb的請(qǐng)假管理系統(tǒng)
- vb學(xué)生信息管理系統(tǒng)-畢業(yè)設(shè)計(jì)論文
- 畢業(yè)設(shè)計(jì)(論文)基于vb的倉(cāng)庫(kù)管理系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)(論文)-vb學(xué)生評(píng)語(yǔ)管理系統(tǒng)的設(shè)計(jì)與實(shí)踐
- 畢業(yè)設(shè)計(jì)--基于vb的抄表管理系統(tǒng)的設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--vb庫(kù)存管理系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)基于vb的學(xué)校信息管理系統(tǒng)
- 計(jì)算機(jī)畢業(yè)設(shè)計(jì)---vb學(xué)生成績(jī)管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)---vb倉(cāng)庫(kù)管理系統(tǒng) (2)
- vb地鐵車(chē)輛管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 地鐵車(chē)輛管理系統(tǒng)設(shè)計(jì)vb畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---vb藥房管理系統(tǒng)設(shè)計(jì)
- 考試管理系統(tǒng)vb畢業(yè)設(shè)計(jì)
- vb宿舍文檔管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)----基于vb英漢互譯系統(tǒng)
- 基于vb的即時(shí)通信系統(tǒng)畢業(yè)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論