【正文】
號(hào),最后在交費(fèi)表中找出學(xué)生表中的相應(yīng)學(xué)號(hào)的記錄,統(tǒng)計(jì)出每個(gè)專業(yè)所有學(xué)生每年次累計(jì)交費(fèi)的情況、以及每年次每個(gè)專業(yè)的欠費(fèi)累計(jì)情況。 按 班級(jí) 查詢的主界面如下 : ? 按專業(yè)查詢 : 在窗體中主要用到 bobox,button,ListBox, GroupBox, DataGrid等控件。 按班級(jí)查詢的主要功能是 :本窗體運(yùn)用了數(shù)據(jù)庫(kù)關(guān)系,調(diào)用了數(shù)據(jù)集中的專業(yè)表( zybiao)、班級(jí)表( bjbiao)、學(xué)生表( student)、交費(fèi)表( jfbiao)等,通過(guò)專業(yè)定位在班級(jí)表 中查詢出相應(yīng)的班級(jí)記錄,然后根據(jù)班級(jí)名稱的定位在學(xué)生表中查詢出所有該班級(jí)的學(xué)生的學(xué)號(hào),最后在交費(fèi)表中找出學(xué)生表中的相應(yīng)學(xué)號(hào)的記錄并在 Listbox 中顯示出來(lái)。 查詢窗體 界面 如下: ? 按班級(jí)查詢: 在窗體中主要用到 bobox,button,ListBox, GroupBox, DataGrid等控件。 程序在運(yùn)行時(shí)綁定到數(shù)據(jù)庫(kù)學(xué)費(fèi)管理( sfgl),生成數(shù)據(jù)集,調(diào)用學(xué)生表( student)和 交費(fèi)表( jfbiao) 。 學(xué) 生交費(fèi)添加窗體如下: 窗體加載代碼: Private Sub jftj_Load(ByVal sender As , ByVal e As ) Handles () () () () () Dim nms(4) As String Dim xnz(1) As String nms(0) = 第一年 nms(1) = 第二年 nms(2) = 第三年 nms(3) = 第 四 年 nms(4) = 第 五 年 (nms) xnz(0) = 三年制 xnz(1) = 五年制 (xnz) = = = = End Sub 年制 專業(yè)下拉列表代碼: Private Sub nz_SelectedIndexChanged(ByVal sender As , ByVal e As ) Handles Dim mytable As DataTable Dim myrow As DataRow Dim flag As Boolean = True Dim i As Integer = 0 () mytable = Dim str1 As String For Each myrow In If myrow(zymc) = And myrow(nz) = Then str1 amp。備注文本框中可以填入一下必要備注信息,信息輸入完畢后,就可以執(zhí)行添加。通過(guò)在專業(yè)下拉列表框中選擇相應(yīng)的專業(yè)、在班級(jí)下拉列表框中選擇對(duì)應(yīng)的班級(jí),系統(tǒng)就會(huì)自動(dòng)在學(xué)費(fèi)表里面查找出相關(guān)專業(yè)相對(duì)應(yīng)的學(xué)費(fèi),并把學(xué)費(fèi)字段的值在應(yīng)交學(xué)費(fèi)所在的文本框中顯示;然后根據(jù)所輸入的學(xué)號(hào),在學(xué)生表里面查詢,如果所輸入的學(xué)號(hào)在學(xué)生表里面沒(méi)有找到,就視為沒(méi)有 注冊(cè)的學(xué)生,該學(xué)號(hào)不存在,不能執(zhí)行交費(fèi)功能,如果所輸入的學(xué)號(hào)在學(xué)生表里可以找到,就可以進(jìn)行交費(fèi)操作。 該窗體是學(xué)費(fèi)管理的重要組成部分,該窗體所涉及到的表關(guān)系復(fù)雜,實(shí)用性強(qiáng),下面就該 窗體功能進(jìn)行詳細(xì)講解:學(xué)生交費(fèi)添加窗體所完成的功能是:可以給每個(gè)已注冊(cè)的學(xué)生添加交費(fèi)記錄。 學(xué)費(fèi)設(shè)置窗口如下圖所示: 添加按鈕代碼: Private Sub Button1_Click(ByVal sender As , ByVal e As ) Handles Dim mytable As DataTable Dim myrow As DataRow Dim flag As Boolean = True Dim i As Integer = 0 Dim str As String mytable = For Each myrow In If myrow(系別名稱 ) = And myrow(專業(yè)名稱) = Then str = MsgBox(該記錄已存在 ,是否進(jìn)行修改 !, ) flag = False 取消按鈕代碼: Private Sub Button2_Click(ByVal sender As , ByVal e As ) Handles (BjcxDataSet1, xfbiao).CancelCurrentEdit() (xfbiao).RejectChanges() () () End Sub ? 交費(fèi)瀏覽 : 交費(fèi)瀏覽是根據(jù),數(shù)據(jù)庫(kù)中的交費(fèi)表( jfbiao)來(lái)實(shí)現(xiàn)的,該窗口主要由 button, DataGrid 等控件組成,完成的功能是根據(jù)不同的條件查看已交學(xué)費(fèi)的學(xué)生記錄等。 程序運(yùn)行時(shí),綁定到數(shù)據(jù)庫(kù)并加載數(shù)據(jù)集,完成數(shù)據(jù)庫(kù)連接。 下圖為學(xué)費(fèi)瀏覽窗口界面: 取消按鈕代碼: Private Sub cancel_Click(ByVal sender As , ByVal e As ) Handles (BjcxDataSet1, xfbiao).CancelCurrentEdit() (xfbiao).RejectChanges() (DataSet12, xfbiao).CancelCurrentEdit() (xfbiao).RejectChanges() End Sub 工具條代碼: Private Sub ToolBar1_ButtonClick(ByVal sender As , ByVal e As ) Handles Select Case () Case 0 Dim rowpostion As Integer = (BjcxDataSet1, xfbiao).Position ().RemoveAt(rowpostion) Case 1 If = True Then = False = True Else = True = False End If Case 2 () End Select End Sub 保存按鈕代碼: Private Sub save_Click(ByVal sender As , ByVal e As ) Handles Try 39。通過(guò)查詢條件可以查詢 相關(guān)專業(yè)的學(xué)費(fèi),結(jié)果在 ListBox中顯示出來(lái)。 學(xué)費(fèi)管理系統(tǒng)主窗體如下圖所示 : 在主窗口中 ,窗體 運(yùn)行時(shí)加載任務(wù)欄 “ 子 窗體”模塊詳細(xì)設(shè) ? 學(xué)費(fèi)瀏覽 本窗口由 ToolBar,Combobox,Button, DataGrid,ListBox,CheckBox 等幾部分組成。主窗體是進(jìn)行相關(guān)操作的主界面。對(duì)于一個(gè)多任務(wù)的應(yīng)用程序,使用多文檔窗體還可以減少占用的系統(tǒng)資源。 登錄界面窗口圖如下所示 : “主窗體”模塊詳細(xì)設(shè)計(jì) 在這個(gè)項(xiàng)目中,選擇使用多文檔界面。 登錄的界面主要由用戶名和密碼的信息,還有一些標(biāo)題設(shè)置,確定和取消的按鈕組成。現(xiàn)在將通過(guò) 學(xué)費(fèi) 管理系統(tǒng)中各個(gè)功能模塊的實(shí)現(xiàn),講解如何使用 Visual 來(lái)編寫數(shù)據(jù)庫(kù)系統(tǒng)的客戶端和諧 。下面給出創(chuàng)建這些表格的 SQL 語(yǔ)句 。現(xiàn)在就可以在 SQL Server 2020 數(shù)據(jù)庫(kù)系統(tǒng)中實(shí)現(xiàn)該邏輯結(jié)構(gòu)。fkey_stu_bjmc 關(guān)系 , 是通過(guò)班級(jí)表 (bjbiao)的主鍵值(bjmc)與學(xué)生表 (student)的外鍵值 (bjmc)相連的 。FK_bjbiao_zybiao 關(guān)系 , 是通過(guò)專業(yè)表 (zybiao)的主鍵值 (zymc)與班級(jí)表 (zybiao)的外鍵值 (zymc)相連的 。在使用的時(shí),要把應(yīng)用程序和這兩個(gè)數(shù)據(jù)庫(kù)保存在同一個(gè)文件夾中。 用戶表( user)信息:包括用戶類型、密碼。學(xué)費(fèi)表( xfbiao)信息 : 系別名稱、專業(yè)名稱、年制、學(xué)費(fèi)。交費(fèi)表( jfbiao)信息:包括學(xué)號(hào)、年制、已交學(xué)費(fèi)、欠交學(xué)費(fèi)、 交費(fèi)日期、備注。學(xué)生表( student)信息:包括系別名稱、專業(yè)名稱、學(xué)號(hào)、姓名、性別、班級(jí)名稱。班級(jí)表( bjbiao)信息:包括專業(yè)名稱、班級(jí)名稱、年制。專業(yè)表 (zybiao) 信息:包括系別編號(hào)、專業(yè)編號(hào)、專業(yè)名稱。系別表( xbbiao)信息:包括系別編號(hào)和系別名稱。良好的數(shù)據(jù)庫(kù)設(shè)計(jì),可以提高數(shù)據(jù)信息的存儲(chǔ)效率,確保數(shù)據(jù)信息的完整性和一致性。系統(tǒng)設(shè)置部分:包括設(shè)置、添加、刪除系別,設(shè)置、添加、刪除名稱,設(shè)置、添加、刪除班級(jí)名稱 , 設(shè)置、添加、刪除學(xué)生 ,更改用戶密碼 等 系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì) 數(shù)據(jù)庫(kù)是信息管理系統(tǒng)的后臺(tái),存儲(chǔ)著所有的信息,在信息管理系統(tǒng)中有著很重要的地位。學(xué)費(fèi)查詢管理部分:包括按學(xué)號(hào)查詢,按班級(jí)查詢,按專業(yè)查詢等。學(xué)生交費(fèi)管理部分:包括學(xué)生學(xué)費(fèi)設(shè)置,學(xué)費(fèi)瀏覽, 交費(fèi)瀏覽,交費(fèi)添加等。系統(tǒng)最終實(shí)現(xiàn)的主要功能如下。 系統(tǒng)功能模塊劃分 開發(fā)這個(gè)系統(tǒng)的目的就是幫助 學(xué)校 的財(cái)務(wù)主管部門提高工作效率,實(shí)現(xiàn) 學(xué)校學(xué)費(fèi)信息管理的系統(tǒng)化、規(guī)范化和自動(dòng)化。用戶需求:描述了用戶使用產(chǎn)品必須要完成的任務(wù)和具備的功能,這在使用實(shí)例文檔或方案腳本說(shuō)明中予以說(shuō)明。 軟件需求一般包含三個(gè)層次 — 業(yè)務(wù)需求、用戶需求和功能需求,還包括非功能需求。功能性需求是指需要計(jì)算機(jī)系統(tǒng)解決的問(wèn)題,也就是對(duì)數(shù)據(jù)的處理要求,這是一類最主要的需求。所謂需求是指用戶對(duì) 軟件的功能和性能的要求,就是用戶希望軟件能什么事情,完成什么樣的功能,達(dá)到什么性能。抽象就是除去問(wèn)題的表面,提取問(wèn)題的本質(zhì),建立問(wèn)題的邏輯模型,以便于以后階段的系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)。 第二章 學(xué)費(fèi) 管理系統(tǒng)設(shè)計(jì)分析 應(yīng)用需求分析 需求分析的過(guò)程可以說(shuō)是一個(gè)對(duì)具體問(wèn)題的反復(fù)理解和抽象的過(guò)程。也就是說(shuō),完成這些特殊任務(wù)時(shí)再也不需要第三方的工具了。所有基于 CLR 的語(yǔ)言都使用 Windows Forms 引擎,與 VB 6 的窗體引擎相比, Windows Forms 有著許多突出的優(yōu)點(diǎn)。 另外一個(gè)引人注目的變化是它的窗體引擎。本文將去粗存精,對(duì) 作一個(gè)全景式的介紹,看看它到底是什么,有些什么用處,以及如何使用。 Visual Basic 提供了大量的控件,這些控件可用于設(shè)計(jì)界面和實(shí)現(xiàn)各種功能,減少了編程人員的工作量,也簡(jiǎn)化了界面設(shè)計(jì)過(guò)程,從而有效的提高了應(yīng)用程序的運(yùn)行效率和可靠性。同時(shí),成長(zhǎng)和發(fā)展也意味著付出一定的代價(jià),新的 Visual 中有許多東西需要重新學(xué)習(xí),一些細(xì)微的變化很可能帶來(lái)出乎意料的麻煩。學(xué)校學(xué)費(fèi)管理系統(tǒng)就是使用電腦代替大量的人工統(tǒng)計(jì)和計(jì)算,完成眾多學(xué)校學(xué)費(fèi)信息的處理,同時(shí)使用電腦還可以安全地、完整地保存大量的學(xué)費(fèi)上繳 記錄。同時(shí) 學(xué)費(fèi)的上繳 具有較強(qiáng)的時(shí)間限制,必須嚴(yán)格按照單位規(guī)定的時(shí)間完成計(jì)算和 統(tǒng)計(jì) 工作。 學(xué)費(fèi) 管理系統(tǒng) : 學(xué)費(fèi) 資管理是一項(xiàng)瑣碎、復(fù)雜而又十分細(xì)致的工作,一般不允許發(fā)生差錯(cuò)。關(guān)系模型和層次、網(wǎng)狀模型的最大判別是用關(guān)鍵碼而不是用指針導(dǎo)航數(shù)據(jù),表格簡(jiǎn)單用戶易懂,編程時(shí)并不涉及存儲(chǔ)結(jié)構(gòu),訪問(wèn)技術(shù)等細(xì)節(jié)。關(guān)系模型是由若干個(gè)關(guān)系模式組成的集合。 作為大型關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng) , SQL Server 2020 肯有許多特點(diǎn) ,如動(dòng)態(tài)自動(dòng)管理優(yōu)化 ,豐富的圖形化管理工具使用方便、維護(hù)簡(jiǎn)單,支持大型 Web 站點(diǎn)和企業(yè)數(shù)據(jù)的存儲(chǔ),可伸縮性和可用性強(qiáng)等。根據(jù)數(shù)據(jù)模型的不同, DBMS 可以分成層次型、網(wǎng)狀型、關(guān)系型、面向?qū)ο笮偷?。?duì)數(shù)據(jù)庫(kù)的一切操作,包括定義、更新及各種控制 ,都是通過(guò) DBMS 進(jìn)行的。 目 錄 第一章 緒 論 ??????????????????????? 數(shù)據(jù)庫(kù) 管理系統(tǒng) 簡(jiǎn)介 ??????????????????