【正文】
權(quán)限 varchar 50 是 無 否 (2)、課程 字段 數(shù)據(jù)類型 字段大小 必填字段 允許為空 約束 課程號(hào) int 4 否 是 主鍵 課程名稱 varchar 50 是 否 授課老師 varchar 50 否 否 教師 教室 班級(jí) 教師 選課程 學(xué)生 課程 選課 查詢 成績 成績 管理者 班級(jí) 用戶 教室 系 教師 管理 從屬 從屬 查詢 排課 學(xué)生 課程 選課程 選課 6 課程類型 char 10 是 否 (3)、學(xué)生信息 字段 數(shù)據(jù)類型 字段大小 必 填字段 允許為空 約束 學(xué)號(hào) char 10 否 否 主鍵 名字 varchar 50 是 否 班級(jí) varchar 12 是 是 性別 char 50 是 否 出生日期 datetime 8 否 民族 varchar 50 否 否 籍貫 varchar 50 否 否 宿舍 varchar 255 否 否 政治面貌 varchar 20 否 否 電話號(hào)碼 varchar 30 否 否 院系 varchar 50 否 否 專業(yè) varchar 50 否 否 身 份證號(hào) varchar 50 否 是 (4)、學(xué)生與課程 字段 數(shù)據(jù)類型 字段大小 必填字段 允許為空 約束 課程號(hào) int 4 是 是 課程名稱 varchar 50 否 是 學(xué)號(hào) char 10 是 否 姓名 char 10 是 否 課程類型 char 10 是 否 學(xué)分 int 4 否 是 成績 int 4 否 否 id int 4 否 否 主鍵 (5)、班級(jí) 字段 數(shù)據(jù)類型 字段大小 必填字段 索引 允許為空 班級(jí)名稱 varchar 50 是 無 否 班級(jí)輔導(dǎo)員 varchar 50 否 唯一索引(班級(jí)輔導(dǎo)員 _Index) 否 所屬系別 varchar 50 是 無 否 四.物理結(jié)構(gòu)設(shè)計(jì) : ( 1)能夠?yàn)g覽學(xué)生成績的所有信息 ( 2)能夠?qū)W(xué)生的信息注冊(cè)登記管理 ( 3)學(xué)生成績資料的數(shù)據(jù)庫建立和管理 ( 4)能夠通過學(xué)生的一個(gè)信息找到個(gè)人成績的相關(guān)信息 ( 5)通過查詢專業(yè)找到學(xué)生的信息 ( 6)相關(guān)人員能對(duì)包含學(xué)生的成績信息進(jìn)行管理 ( 7)多用戶數(shù)據(jù)安全管理,保證各部門的數(shù)據(jù)安全、完整,對(duì)每個(gè)使用本系統(tǒng)用戶進(jìn)行權(quán)限的設(shè)置 ( 8)簡易操作, 不需要計(jì)算機(jī)專業(yè)人員。 ( 9)學(xué)生成績添加、刪除和修改 ,包括學(xué)生的學(xué)號(hào)、姓名、課程名稱、學(xué)分、成績 ( 10) 成績查詢,查詢條件為學(xué)生學(xué)號(hào)、姓名、課程名稱等信息的綜合查詢 7 ( 11)用戶管理:設(shè)置兩個(gè)級(jí)別用戶:管理員和普通用戶,管理員有權(quán)限使用 所有 的功能,普通用戶只能使用 查詢 功能,用戶使用本系統(tǒng)之前必須先通過身份認(rèn)證(用戶名和密碼) : 3. 模塊的流程圖 ( 1) 登 錄 流程圖 Y N Y N ( 2) 主界面操作圖 ( 3) 所有學(xué)生與增加學(xué)生數(shù)據(jù)圖 主界面 系統(tǒng)管理 用戶管理 班級(jí)管理 退出系統(tǒng) 退出系統(tǒng) 學(xué)生管理 學(xué)生查詢 學(xué)生管理 開課與選課 學(xué)生選課 選課查詢 課程管理 課程查詢 課程管理 學(xué)生成績 成績管理 成績查詢?cè)? 登陸主界面 驗(yàn)證用戶名 驗(yàn)證密碼 進(jìn)入主界面 所有學(xué)生 增加學(xué)生 主界面 系統(tǒng)管理 用戶管理 班級(jí)管理 退出系統(tǒng) 退出系統(tǒng) 學(xué)生管理 學(xué)生查詢 學(xué)生管理 開課與選課 學(xué)生選課 選課查詢 課程管理 課程查詢 課程管理 學(xué)生成績 成績管理 成績查詢?cè)? 8 ( 4) 課程與成績數(shù)據(jù)處理圖 所有成績 ER 圖 增加成績 ER 圖 ( 5) 數(shù)據(jù)保存流程圖 N N Y ( 6) 各信息 管理 處理圖 數(shù)據(jù)初始化 讀取數(shù)據(jù)行數(shù) 按顯示數(shù)據(jù) 數(shù)據(jù)初始化 讀取數(shù)據(jù)字段 初始化表格 等待輸入數(shù)據(jù) 所有成績 數(shù)據(jù)初始化 讀取數(shù)據(jù)行數(shù) 為所有數(shù)據(jù)分頁 按分頁顯示數(shù)據(jù) 執(zhí)行保存 保存狀態(tài) 載入表名 學(xué)生信息 學(xué)生與課程 數(shù)據(jù)完整性 是否有重復(fù) 插入數(shù)據(jù) 退出 **管理 增加 保存 修改 刪除 退出 增加成績 數(shù)據(jù)初始化 讀取數(shù)據(jù)字段 初始化表格 等待輸入數(shù)據(jù) 9 ( 7) 查詢 ( 1) 連接數(shù)據(jù)庫的模塊代碼 Public mdbconn As New Public mdbrs As New Public mdbrs1 As New Public mdbrs2 As New Public admin As Boolean Public hang As Integer Public user1 As String Public mdi As Boolean Public sup As String Sub Main() mdi = True admin = False = Provider=。Persist Security Info=False。Data Source=. = 30 End Sub ( 2) 用戶 登錄代碼 Private Sub XPButton1_Click() On Error GoTo finish user = Set mdbrs = (select * from 登錄 where 用戶名 =39。 amp。 and 密碼 =39。 amp。) If = True Then = = MsgBox 用戶名或密碼不正確!! Else user1 = (0) sup = (2) If (2) = 超級(jí)管理員 Then admin = True Else admin = False End If Unload Me End If Exit Sub finish: MsgBox End Sub Private Sub XPButton2_Click() End End Sub Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then 查 詢 增加 退出 10 Call XPButton1_Click End If End Sub Private Sub Text2_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Call XPButton1_Click End If End Sub ( 3)主窗體 代碼 Private Sub abou_Click() End Sub Private Sub classma_Click() If admin = False Then MsgBox 你沒有管理本功能的權(quán)限 ,請(qǐng)與管理員聯(lián)系 ! Exit Sub End If If mdi = True Then Else MsgBox 每次只能打開一個(gè)窗口,請(qǐng)關(guān)閉正在打開的窗口! , vbInformation, 不允許當(dāng)前操作! End If End Sub Private Sub cmai_Click() If admin = False Then MsgBox 你沒有管理本功能的權(quán)限 ,請(qǐng)與管理員聯(lián)系 ! Exit Sub End If If mdi = True Then Else MsgBox 每次只能打開一個(gè)窗口,請(qǐng)關(guān)閉正在打開的窗口! , vbInformation, 不允許當(dāng)前操作! End If End Sub Private Sub cs_Click() If mdi = True Then Else MsgBox 每次只能打開一個(gè)窗口,請(qǐng)關(guān)閉正在打開的窗口! , vbInformation, 不允許當(dāng)前操作! End If End Sub Private Sub exit_Click() If mdi = False Then MsgBox 請(qǐng)保存數(shù)據(jù)! , vbInformation, 不允許當(dāng)前操作! Else End End If End Sub Private Sub kecheng_Click() If mdi = True Then Else MsgBox 每次只能打開一個(gè)窗口,請(qǐng)關(guān)閉正在打開的窗口! , vbInformation, 不允許當(dāng)前操作! End If End Sub Private Sub MDIForm_Load() = 今天是 amp。 年 amp。 月 amp。 日 , 歡迎您使用學(xué)生成績管理系統(tǒng) ! amp。 user111 amp。 sup End Sub 11 Private Sub relog_Click() If mdi = False Then MsgBox 請(qǐng)關(guān)閉打開的窗口! , vbInformation, 不允許當(dāng)前操作! Else Unload Me End If End Sub Private Sub sturea_Click() If mdi = True Then Else MsgBox 每次只能打開一個(gè)窗口,請(qǐng)關(guān)閉正在 打開的窗口! , vbInformation, 不允許當(dāng)前操作! End If End Sub Private Sub stureg_Click() If admin = False Then MsgBox 你沒有管理本功能的權(quán)限 ,請(qǐng)與管理員聯(lián)系 ! Exit Sub End If If mdi = True Then Else MsgBox 每次只能打開一個(gè)窗口,請(qǐng)關(guān)閉正在打開的窗口! , vbInformation, 不允許當(dāng)前操作! End If End Sub Private Sub stuxuan_Click() If admin = False Then MsgBox 你沒有管理本功能的權(quán)限 ,請(qǐng)與管理員聯(lián)系 !