版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 學(xué)生成績(jī)管理系統(tǒng)設(shè)計(jì)說明</p><p> ?。ū驹O(shè)計(jì)以VB為前臺(tái)對(duì)數(shù)據(jù)庫進(jìn)行操作)</p><p><b> 需求</b></p><p> 本系統(tǒng)主要用于學(xué)校的學(xué)生成績(jī)管理。</p><p><b> 用戶身份的驗(yàn)證</b></p><p>&
2、lt;b> 學(xué)生基本信息管理</b></p><p><b> 按班級(jí)選課</b></p><p><b> 學(xué)生成績(jī)的管理</b></p><p><b> 總體設(shè)計(jì)</b></p><p> 本系統(tǒng)包括:標(biāo)準(zhǔn)模塊、系統(tǒng)登錄模塊、主界面模塊、系統(tǒng)管
3、理模塊、學(xué)生基本信息管理模塊、選課模塊、成績(jī)管理模塊。</p><p><b> 標(biāo)準(zhǔn)模塊</b></p><p> 定義公共變量和過程。</p><p><b> 系統(tǒng)登錄模塊</b></p><p> 進(jìn)行用戶身份的驗(yàn)證。</p><p><b> 主
4、界面模塊</b></p><p> 作為系統(tǒng)總界面,供用戶進(jìn)行各項(xiàng)選擇。</p><p><b> 系統(tǒng)管理模塊</b></p><p> 用戶管理及系統(tǒng)退出。</p><p> 學(xué)生基本信息管理模塊</p><p> 學(xué)生基本信息的錄入和查詢。</p><
5、;p><b> 選課模塊</b></p><p><b> 為班級(jí)選課。</b></p><p><b> 成績(jī)管理模塊</b></p><p> 進(jìn)行學(xué)生成績(jī)的錄入及查詢。</p><p><b> 數(shù)據(jù)庫設(shè)計(jì)及配置</b></p
6、><p><b> 數(shù)據(jù)庫設(shè)計(jì)</b></p><p> 該數(shù)據(jù)庫由以下幾個(gè)表組成:</p><p> 用戶表、學(xué)生基本信息表、班級(jí)課程表、學(xué)生成績(jī)表。</p><p><b> 用戶表</b></p><p> 包括用戶名、密碼、是否是超級(jí)用戶。</p>
7、<p><b> 學(xué)生基本信息表</b></p><p> 包括學(xué)號(hào)、姓名、電話、地址、班級(jí)名稱、性別。</p><p><b> 班級(jí)課程表</b></p><p> 包括班級(jí)名稱、課程名稱。</p><p><b> 學(xué)生成績(jī)表</b></p&g
8、t;<p> 包括學(xué)號(hào)、課程名稱、成績(jī)。</p><p><b> 數(shù)據(jù)庫中各表關(guān)系</b></p><p> 學(xué)生基本信息表與班級(jí)課程表通過班級(jí)名稱字段相關(guān)聯(lián),學(xué)生基本信息表與學(xué)生成績(jī)表通過學(xué)號(hào)字段相關(guān)聯(lián),班級(jí)課程表與學(xué)生成績(jī)表通過課程名稱字段相關(guān)聯(lián)。</p><p><b> 系統(tǒng)實(shí)現(xiàn)</b>&l
9、t;/p><p> 標(biāo)準(zhǔn)模塊(公有模塊)</p><p> 標(biāo)準(zhǔn)模塊中的數(shù)據(jù)定義</p><p> 用于定義全局變量及過程。本系統(tǒng)定義了當(dāng)前用戶名及用戶類型。</p><p><b> 標(biāo)準(zhǔn)模塊代碼設(shè)計(jì)</b></p><p> Option Explicit</p><
10、p> Public UserName As String</p><p> Public UserType As Boolean</p><p><b> 系統(tǒng)登錄模塊</b></p><p><b> 說明</b></p><p> 進(jìn)行用戶身份的驗(yàn)證。特定的用戶才能登錄到系統(tǒng)。&
11、lt;/p><p><b> 窗體設(shè)計(jì)</b></p><p> 系統(tǒng)登錄窗體的窗體類型為Form,界面如下圖所示:</p><p> 主要控件屬性如下表所示:</p><p><b> 代碼設(shè)計(jì)</b></p><p><b> 公共定義</b>
12、</p><p> Option Explicit</p><p> Dim Count1 As Integer</p><p> 窗體裝載處理程序(Load)</p><p> Private Sub Form_Load()</p><p> Count1 = 0‘錯(cuò)誤次數(shù)清零<
13、/p><p><b> End Sub</b></p><p> 取消按鈕(cmdCancel)處理程序(Click)</p><p> Private Sub cmdCancel_Click()</p><p> Unload Me‘系統(tǒng)退出</p><p><b
14、> End Sub</b></p><p> 確定按鈕(cmdOk)處理程序(Click)</p><p> Private Sub cmdOk_Click()</p><p> Dim s1 As String</p><p> Dim Password As String</p><p>
15、; On Error Resume Next</p><p> If Text1.Text = "" Then‘用戶名為空,則退出</p><p> MsgBox ("用戶名不能為空,請(qǐng)重新輸入")</p><p> Text1.SetFocus</p><p><b>
16、; Exit Sub</b></p><p><b> End If</b></p><p> ‘按輸入的用戶名進(jìn)行查詢</p><p> s1 = "SELECT * from 用戶表 WHERE 用戶名='" & Text1.Text & "'"
17、</p><p> Adodc1.RecordSource = s1</p><p> Adodc1.Refresh</p><p> If Adodc1.Recordset.EOF = False Then‘判斷查詢結(jié)果</p><p> UserName = Adodc1.Recordset.Fields(0)‘有該
18、用戶名,即用戶名正確</p><p> Password = Adodc1.Recordset.Fields(1)</p><p> UserType = Adodc1.Recordset.Fields(2)</p><p> If Password = Text2.Text Then‘判斷密碼是否正確</p><p> U
19、nload Me‘密碼正確,關(guān)閉當(dāng)前窗體</p><p> FrmMain.Show‘顯示主界面窗體</p><p><b> Exit Sub</b></p><p><b> Else</b></p><p> MsgBox ("密碼錯(cuò)誤,請(qǐng)
20、重新輸入")‘密碼錯(cuò)誤,提示</p><p> Text2.SetFocus</p><p> Text2.Text = ""</p><p><b> End If</b></p><p> Else‘沒有該用戶名,即用戶名錯(cuò)誤</p>
21、<p> MsgBox "用戶名錯(cuò)誤,請(qǐng)重新輸入"</p><p> Text1.SetFocus</p><p> Text1.Text = ""</p><p> Text2.Text = ""</p><p><b> End If</b&
22、gt;</p><p> Count1 = Count1 + 1‘錯(cuò)誤次數(shù)累計(jì)</p><p> If Count1 >= 3 Then</p><p> MsgBox "錯(cuò)誤超過3次,系統(tǒng)退出"</p><p><b> Unload Me</b></p>
23、<p><b> End If</b></p><p><b> End Sub</b></p><p><b> 主界面模塊</b></p><p><b> 說明</b></p><p> 作為系統(tǒng)總界面,供用戶進(jìn)行各項(xiàng)選擇。&
24、lt;/p><p><b> 窗體設(shè)計(jì)</b></p><p> 主界面模塊窗體類型為MDIForm,界面如下圖所示。</p><p><b> 代碼設(shè)計(jì)</b></p><p> 窗體變?yōu)榛顒?dòng)窗體處理程序(MDIForm-Activate)</p><p> Priv
25、ate Sub MDIForm_Activate()</p><p> WindowState = 2‘窗體最大化狀態(tài)</p><p> StatusBar1.Panels(1).Text = "用戶名: " & UserName‘在狀態(tài)欄顯示用戶名、用戶類型</p><p> If UserType = T
26、rue Then</p><p> StatusBar1.Panels(2).Text = "用戶類型: 管理員"</p><p><b> Else</b></p><p> StatusBar1.Panels(2).Text = "用戶類型: 普通用戶"</p><p>
27、<b> End If</b></p><p> If UserType = False Then‘對(duì)普通用戶設(shè)某些菜單項(xiàng)不可用</p><p> AA1.Enabled = False</p><p> BB1.Enabled = False</p><p> CC.Enabled = Fal
28、se</p><p> DD1.Enabled = False</p><p> Toolbar1.Buttons(1).Enabled = False‘對(duì)普通用戶設(shè)工具欄的某些按鈕不可用</p><p> Toolbar1.Buttons(3).Enabled = False</p><p> Toolbar1.Buttons(
29、6).Enabled = False</p><p> Toolbar1.Buttons(7).Enabled = False</p><p> Toolbar1.Buttons(9).Enabled = False</p><p><b> End If</b></p><p><b> End Su
30、b</b></p><p> 定時(shí)器(Timer1)處理程序(Timer)</p><p> Private Sub Timer1_Timer()</p><p> StatusBar1.Panels(3).Text = Now‘在狀態(tài)欄中顯示當(dāng)前時(shí)間</p><p><b> End Sub<
31、;/b></p><p> 工具欄(Toolbar1)處理程序(ButtonClick)</p><p> Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)</p><p> Select Case Button.Index</p><p>&
32、lt;b> Case 1</b></p><p> Form11.Show (1)‘用戶管理</p><p><b> Case 3</b></p><p> Form21.Show (1)‘學(xué)生基本信息維護(hù)</p><p><b> Case 4</b
33、></p><p> Form22.Show (1)‘學(xué)生基本信息查詢</p><p><b> Case 6</b></p><p> Form31.Show (1)‘課程添加</p><p><b> Case 7</b></p><p&
34、gt; Form32.Show (1)‘課程刪除</p><p><b> Case 9</b></p><p> Form41.Show (1)‘學(xué)生成績(jī)維護(hù)</p><p><b> Case 10</b></p><p> Form42.Show (1)
35、‘學(xué)生成績(jī)查詢</p><p><b> Case 12</b></p><p> Unload Me‘系統(tǒng)退出</p><p> End Select</p><p><b> End Sub</b></p><p> “用戶管理”菜單項(xiàng)處理程
36、序(AA1-Click)</p><p> Private Sub AA1_Click()</p><p> Form11.Show (1)</p><p><b> End Sub</b></p><p> “退出”菜單項(xiàng)處理程序(AA3-click)</p><p> Private
37、 Sub AA3_Click()</p><p><b> Unload Me</b></p><p><b> End Sub</b></p><p> “學(xué)生基本信息維護(hù)”菜單項(xiàng)處理程序(BB1-click)</p><p> Private Sub BB1_Click()</p&
38、gt;<p> Form21.Show (1)</p><p><b> End Sub</b></p><p> “學(xué)生基本信息查詢”菜單項(xiàng)處理程序(BB2-click)</p><p> Private Sub BB2_Click()</p><p> Form22.Show (1)</
39、p><p><b> End Sub</b></p><p> “課程添加”菜單項(xiàng)處理程序(CC1-click)</p><p> Private Sub CC1_Click()</p><p> Form31.Show (1)</p><p><b> End Sub</b
40、></p><p> “課程刪除”菜單項(xiàng)處理程序(CC2-click)</p><p> Private Sub CC2_Click()</p><p> Form32.Show (1)</p><p><b> End Sub</b></p><p> “學(xué)生成績(jī)維護(hù)”菜單項(xiàng)處理
41、程序(DD1-click)</p><p> Private Sub DD1_Click()</p><p> Form41.Show (1)</p><p><b> End Sub</b></p><p> “學(xué)生成績(jī)查詢”菜單項(xiàng)處理程序(DD2-click)</p><p> Pr
42、ivate Sub DD2_Click()</p><p> Form42.Show (1)</p><p><b> End Sub</b></p><p><b> 用戶管理模塊</b></p><p><b> 說明</b></p><p>
43、; 創(chuàng)建、刪除用戶。設(shè)定用戶權(quán)限。</p><p><b> 窗體設(shè)計(jì)</b></p><p><b> 代碼設(shè)計(jì)</b></p><p> 上一條(Command1)處理(Click)</p><p> Private Sub Command1_Click()</p>&l
44、t;p> Command2.Enabled = True</p><p> Adodc1.Recordset.MovePrevious</p><p> If Adodc1.Recordset.BOF Then</p><p> Command1.Enabled = False</p><p> Adodc1.Recordse
45、t.MoveFirst</p><p><b> End If</b></p><p><b> End Sub</b></p><p> 下一條(Command2)處理(Click)</p><p> Private Sub Command2_Click()</p><
46、p> Command1.Enabled = True</p><p> Adodc1.Recordset.MoveNext</p><p> If Adodc1.Recordset.EOF Then</p><p> Command2.Enabled = False</p><p> Adodc1.Recordset.Move
47、Last</p><p><b> End If</b></p><p><b> End Sub</b></p><p> 添加(Command3)處理(Click)</p><p> Private Sub Command3_Click()</p><p> I
48、f Command3.Caption = "添加" Then</p><p> Command3.Caption = "確定"</p><p> Command1.Enabled = False</p><p> Command2.Enabled = False</p><p> Command
49、4.Enabled = False</p><p> Adodc1.Recordset.AddNew</p><p> Text1.SetFocus</p><p><b> Else</b></p><p> If Text1.Text = "" Then</p><p&
50、gt; MsgBox ("用戶名不能為空")</p><p><b> Exit Sub</b></p><p><b> End If</b></p><p> Command3.Caption = "添加"</p><p> Adodc1.Rec
51、ordset.Update</p><p> Command1.Enabled = True</p><p> Command2.Enabled = True</p><p> Command4.Enabled = True</p><p><b> End If</b></p><p>
52、<b> End Sub</b></p><p> 刪除(Command4)處理(Click)</p><p> Private Sub Command4_Click()</p><p> Adodc1.Recordset.Delete</p><p> Adodc1.Recordset.MoveNext<
53、;/p><p> If Adodc1.Recordset.EOF Then</p><p> Adodc1.Recordset.MoveLast</p><p><b> End If</b></p><p><b> End Sub</b></p><p> 退出(C
54、ommand5)處理(Click)</p><p> Private Sub Command5_Click()</p><p><b> Unload Me</b></p><p><b> End Sub</b></p><p> 學(xué)生基本信息管理模塊</p><p&g
55、t;<b> 說明</b></p><p> 學(xué)生基本信息的添加、刪除、查詢。</p><p> 該模塊有兩個(gè)窗體:學(xué)生基本信息維護(hù)窗體和學(xué)生基本信息查詢窗體</p><p> 學(xué)生基本信息維護(hù)窗體</p><p><b> 窗體設(shè)計(jì)</b></p><p> 主
56、要控件屬性如下表所示:</p><p><b> 代碼設(shè)計(jì)</b></p><p> 窗體裝載處理程序(Load)</p><p> Private Sub Form_Load()</p><p> DataGrid1.AllowAddNew = True</p><p> DataGr
57、id1.AllowDelete = True</p><p> DataGrid1.AllowUpdate = True</p><p><b> End Sub</b></p><p> 退出(Command1)處理(Click)</p><p> Private Sub Command1_Click()<
58、;/p><p><b> Unload Me</b></p><p><b> End Sub</b></p><p> 學(xué)生基本信息查詢窗體</p><p><b> 窗體設(shè)計(jì)</b></p><p> 主要控件屬性如下表所示:</p>
59、;<p><b> 代碼設(shè)計(jì)</b></p><p> 查詢(Command1)處理(Click )</p><p> Private Sub Command1_Click()</p><p> Dim s1 As String</p><p><b> s1 = ""
60、;</b></p><p> If Check1.Value = 1 Then</p><p> If Text1.Text <> "" Then</p><p> s1 = s1 & "姓名='" & Text1.Text & "'"&
61、lt;/p><p><b> End If</b></p><p><b> End If</b></p><p> If Check2.Value = 1 Then</p><p> If Text2.Text <> "" Then</p><
62、;p> If s1 <> "" Then</p><p> s1 = s1 & " and "</p><p><b> End If</b></p><p> s1 = s1 & "學(xué)號(hào)='" & Text2.Text &
63、amp; "'"</p><p><b> End If</b></p><p><b> End If</b></p><p> If Check3.Value = 1 Then</p><p> If DataList1.Text <> "
64、;" Then</p><p> If s1 <> "" Then</p><p> s1 = s1 & " and "</p><p><b> End If</b></p><p> s1 = s1 & "班級(jí)名稱=&
65、#39;" & DataList1.Text & "'"</p><p><b> End If</b></p><p><b> End If</b></p><p> If s1 <> "" Then</p>&l
66、t;p> s1 = "where " & s1</p><p><b> End If</b></p><p> Adodc1.RecordSource = "select * from 學(xué)生基本信息表 " & s1</p><p> Adodc1.Refresh<
67、/p><p> Set DataGrid1.DataSource = Adodc1</p><p><b> End Sub</b></p><p> 退出(Command2)處理(Click)</p><p> Private Sub Command2_Click()</p><p><
68、;b> Unload Me</b></p><p><b> End Sub</b></p><p> 窗體裝載處理程序(Load)</p><p> Private Sub Form_Load()</p><p> DataGrid1.AllowAddNew = False</p>
69、;<p> DataGrid1.AllowDelete = False</p><p> DataGrid1.AllowUpdate = False</p><p><b> End Sub</b></p><p><b> 選課模塊</b></p><p><b>
70、 說明</b></p><p> 該模塊為一個(gè)班級(jí)選課。</p><p><b> 課程添加窗體</b></p><p> 用于課程的添加和查詢</p><p><b> 窗體設(shè)計(jì)</b></p><p> 主要控件屬性如下表所示:</p>
71、<p><b> 代碼設(shè)計(jì)</b></p><p> 添加(Command1)處理(Click)</p><p> Private Sub Command1_Click()</p><p> Dim s1 As String, s2 As String</p><p> On Error Resu
72、me Next</p><p> If Text1.Text = "" Or Text2.Text = "" Then</p><p> MsgBox ("輸入不能為空")</p><p><b> Exit Sub</b></p><p><b&g
73、t; End If</b></p><p> s1 = "select * from 班級(jí)課程表 where 班級(jí)名稱='"</p><p> s2 = Text1.Text & "' and 課程名稱='" & Text2.Text & "'"</
74、p><p> Adodc1.RecordSource = s1 & s2</p><p> Adodc1.Refresh</p><p> If Adodc1.Recordset.EOF = False Then</p><p> Text1.SetFocus</p><p> MsgBox "
75、該記錄已存在,請(qǐng)重新輸入", , "警告"</p><p><b> Exit Sub</b></p><p><b> End If</b></p><p> s1 = "select * from 班級(jí)課程表"</p><p> Adod
76、c1.RecordSource = s1</p><p> Adodc1.Refresh</p><p> Adodc1.Recordset.MoveLast</p><p> Adodc1.Recordset.AddNew</p><p> Adodc1.Recordset.Fields("班級(jí)名稱") = Te
77、xt1.Text</p><p> Adodc1.Recordset.Fields("課程名稱") = Text2.Text</p><p> Adodc1.Recordset.Update</p><p> Adodc1.Refresh</p><p> s1 = "select 課程名稱 from 班
78、級(jí)課程表 where 班級(jí)名稱='" & Text1.Text & "'"</p><p> Adodc1.RecordSource = s1</p><p> Adodc1.Refresh</p><p> Set DataGrid1.DataSource = Adodc1.Recordset&l
79、t;/p><p> Text2.SetFocus</p><p> Text2.Text = ""</p><p><b> Exit Sub</b></p><p><b> End Sub</b></p><p> 查詢(Command2)處理(
80、Click)</p><p> Private Sub Command2_Click()</p><p> Dim s1 As String</p><p> s1 = "select 課程名稱 from 班級(jí)課程表 where 班級(jí)名稱='" & Text1.Text & "'"<
81、/p><p> Adodc1.RecordSource = s1</p><p> Adodc1.Refresh</p><p> Set DataGrid1.DataSource = Adodc1.Recordset</p><p><b> End Sub</b></p><p> 退出
82、(Command3)處理(Click)</p><p> Private Sub Command3_Click()</p><p><b> Unload Me</b></p><p><b> End Sub</b></p><p> 窗體裝載處理程序(Load)</p>&
83、lt;p> Private Sub Form_Load()</p><p> DataGrid1.AllowAddNew = False</p><p> DataGrid1.AllowDelete = False</p><p> DataGrid1.AllowUpdate = False</p><p><b>
84、 End Sub</b></p><p><b> 課程刪除窗體</b></p><p><b> 窗體設(shè)計(jì)</b></p><p> 主要控件屬性如下表所示:</p><p><b> 代碼設(shè)計(jì)</b></p><p> 退出(C
85、ommand1)處理(Click)</p><p> Private Sub Command1_Click()</p><p><b> Unload Me</b></p><p><b> End Sub</b></p><p> 數(shù)據(jù)列表框(DataList1)處理(Click)<
86、/p><p> Private Sub DataList1_Click()</p><p> Dim s1 As String</p><p> s1 = "select * from 班級(jí)課程表 where 班級(jí)名稱='" & DataList1.Text & "'"</p>
87、<p> Adodc2.RecordSource = s1</p><p> Adodc2.Refresh</p><p> Set DataGrid1.DataSource = Adodc2</p><p><b> End Sub</b></p><p> 窗體裝載處理程序(Load)</p
88、><p> Private Sub Form_Load()</p><p> DataGrid1.AllowDelete = True</p><p> DataGrid1.AllowUpdate = True</p><p> DataGrid1.AllowAddNew = False</p><p><b
89、> End Sub</b></p><p><b> 成績(jī)管理模塊</b></p><p><b> 說明</b></p><p> 進(jìn)行學(xué)生成績(jī)的錄入及查詢。</p><p><b> 成績(jī)錄入窗體</b></p><p>
90、 進(jìn)行學(xué)生成績(jī)的添加、修改及刪除。</p><p><b> 窗體設(shè)計(jì)</b></p><p><b> 代碼設(shè)計(jì)</b></p><p> 錄入(Command1)處理(Click)</p><p> Private Sub Command1_Click()</p><
91、;p> Dim s1 As String, s2 As String, s3 As String</p><p> On Error Resume Next</p><p> s1 = "select * from 學(xué)生成績(jī)表 "</p><p> s2 = "where 學(xué)號(hào)='" & Lis
92、t2.Text & "' and "</p><p> s3 = "課程名稱='" & List1.Text & "'"</p><p> Adodc3.RecordSource = s1 & s2 & s3</p><p> Adod
93、c3.Refresh</p><p> If Adodc3.Recordset.EOF = False Then</p><p> Adodc3.Recordset.Fields(2) = Val(Text1.Text)</p><p><b> Else</b></p><p> Adodc3.Recordse
94、t.MoveLast</p><p> Adodc3.Recordset.AddNew</p><p> Adodc3.Recordset.Fields(0) = List2.Text</p><p> Adodc3.Recordset.Fields(1) = List1.Text</p><p> Adodc3.Recordset.
95、Fields(2) = Val(Text1.Text)</p><p><b> End If</b></p><p> Adodc3.Recordset.Update</p><p> Adodc3.Refresh</p><p> s1 = "select 學(xué)號(hào),成績(jī) from 學(xué)生成績(jī)表 wher
96、e 課程名稱='" & List1.Text & "'"</p><p> s2 = " and 學(xué)號(hào) in (select 學(xué)號(hào) from 學(xué)生基本信息表 "</p><p> s3 = "where 班級(jí)名稱 ='" & DataList1.Text &
97、 "')"</p><p> Adodc3.RecordSource = s1 & s2 & s3</p><p> Adodc3.Refresh</p><p> Set DataGrid1.DataSource = Adodc3</p><p><b> End Sub<
98、/b></p><p> 退出(Command1)處理(Click )</p><p> Private Sub Command2_Click()</p><p><b> Unload Me</b></p><p><b> End Sub</b></p><p&
99、gt; 數(shù)據(jù)列表框(DataList1)處理(Click)</p><p> Private Sub DataList1_Click()</p><p> Dim s1 As String, s2 As String</p><p> Set DataGrid1.DataSource = Nothing</p><p> s1 =
100、"select 課程名稱 from 班級(jí)課程表 "</p><p> s2 = "where 班級(jí)名稱='" & DataList1.Text & "'"</p><p> Adodc2.RecordSource = s1 & s2</p><p> Adod
101、c2.Refresh</p><p> If Adodc2.Recordset.EOF = True Then</p><p> MsgBox "請(qǐng)?jiān)诎嗉?jí)課程表里添加該班級(jí)的課程名稱"</p><p><b> Exit Sub</b></p><p><b> End If<
102、/b></p><p> List1.Clear</p><p> Adodc2.Recordset.MoveFirst</p><p> Do While Adodc2.Recordset.EOF = False</p><p> List1.AddItem Adodc2.Recordset.Fields(0)</p&g
103、t;<p> Adodc2.Recordset.MoveNext</p><p><b> Loop</b></p><p> s1 = "select 學(xué)號(hào) from 學(xué)生基本信息表 "</p><p> s2 = "where 班級(jí)名稱='" & DataLis
104、t1.Text & "'"</p><p> Adodc2.RecordSource = s1 & s2</p><p> Adodc2.Refresh</p><p> If Adodc2.Recordset.EOF = True Then</p><p> MsgBox "請(qǐng)?jiān)?/p>
105、學(xué)生信息表里添加該班級(jí)"</p><p><b> Exit Sub</b></p><p><b> End If</b></p><p> List2.Clear</p><p> Adodc2.Recordset.MoveFirst</p><p>
106、 Do While Adodc2.Recordset.EOF = False</p><p> List2.AddItem Adodc2.Recordset.Fields(0)</p><p> Adodc2.Recordset.MoveNext</p><p><b> Loop</b></p><p><
107、b> End Sub</b></p><p> 窗體裝載處理程序(Load)</p><p> Private Sub Form_Load()</p><p> DataGrid1.AllowDelete = True</p><p> DataGrid1.AllowAddNew = False</p>
108、<p> DataGrid1.AllowUpdate = False</p><p><b> End Sub</b></p><p> 列表框(List1)處理(Click)</p><p> Private Sub List1_Click()</p><p> Dim s1 As String
109、, s2 As String, s3 As String</p><p> s1 = "select 學(xué)號(hào),成績(jī) from 學(xué)生成績(jī)表 where 課程名稱='" & List1.Text & "'"</p><p> s2 = " and 學(xué)號(hào) in (select 學(xué)號(hào) from 學(xué)生基本信息表
110、"</p><p> s3 = "where 班級(jí)名稱 ='" & DataList1.Text & "')"</p><p> Adodc3.RecordSource = s1 & s2 & s3</p><p> Adodc3.Refresh</p>
111、;<p> Set DataGrid1.DataSource = Adodc3</p><p><b> End Sub</b></p><p> 列表框(List2)處理(Click)</p><p> Private Sub List2_Click()</p><p> Text1.Text
112、= ""</p><p><b> End Sub</b></p><p><b> 成績(jī)查詢窗體</b></p><p><b> 進(jìn)行學(xué)生成績(jī)的查詢</b></p><p><b> 窗體設(shè)計(jì)</b></p>
113、<p> 主要控件屬性如下表所示:</p><p><b> 代碼設(shè)計(jì)</b></p><p><b> 公共定義</b></p><p> Option Explicit</p><p> Dim opt As Integer</p><p> 組合框
114、(Combo1)處理(Click)</p><p> Private Sub Combo1_Click()</p><p> Dim s1 As String, s2 As String</p><p> Set DataGrid1.DataSource = Nothing</p><p> Combo2.Clear</p>
115、;<p> If opt = 0 Then</p><p> s1 = "select 課程名稱 from 班級(jí)課程表 where 班級(jí)名稱='"</p><p> s2 = Combo1.Text & "' group by 課程名稱"</p><p> Adodc2.Recor
116、dSource = s1 & s2</p><p><b> Else</b></p><p> s1 = "select 學(xué)號(hào) from 學(xué)生基本信息表 where 班級(jí)名稱='"</p><p> s2 = Combo1.Text & "'"</p>
117、<p> Adodc2.RecordSource = s1 & s2</p><p><b> End If</b></p><p> Adodc2.Refresh</p><p> Do While Adodc2.Recordset.EOF = False</p><p> Combo2.
118、AddItem Adodc2.Recordset.Fields(0)</p><p> Adodc2.Recordset.MoveNext</p><p><b> Loop</b></p><p><b> End Sub</b></p><p> 組合框(Combo2)處理(Click)
119、</p><p> Private Sub Combo2_Click()</p><p> Dim s1 As String, s2 As String, s3 As String</p><p> Set DataGrid1.DataSource = Nothing</p><p> If opt = 0 Then</p>
120、;<p> s1 = "select * from 學(xué)生成績(jī)表 where 課程名稱='"</p><p> s2 = Combo2.Text & " ' and 學(xué)號(hào) in (select 學(xué)號(hào) "</p><p> s3 = "from 學(xué)生基本信息表 where 班級(jí)名稱 =
121、9;" & Combo1.Text & "')"</p><p> Adodc1.RecordSource = s1 & s2 & s3</p><p> Adodc1.Refresh</p><p> Set DataGrid1.DataSource = Adodc1</p>
122、<p><b> Else</b></p><p> s1 = "select * from 學(xué)生成績(jī)表 where 學(xué)號(hào)='" & Combo2.Text & "'"</p><p> Adodc1.RecordSource = s1</p><p>
123、 Adodc1.Refresh</p><p> Set DataGrid1.DataSource = Adodc1</p><p><b> End If</b></p><p><b> End Sub</b></p><p> 退出(Command1)處理(Click )</p
124、><p> Private Sub Command1_Click()</p><p><b> Unload Me</b></p><p><b> End Sub</b></p><p> 窗體裝載處理程序(Load)</p><p> Private Sub For
125、m_Load()</p><p> DataGrid1.AllowAddNew = False</p><p> DataGrid1.AllowDelete = False</p><p> DataGrid1.AllowUpdate = False</p><p><b> End Sub</b></p&
126、gt;<p> 單選按鈕(Option1)處理(Click )</p><p> Private Sub Option1_Click(Index As Integer)</p><p> If Index > 1 Then</p><p><b> Exit Sub</b></p><p>&
127、lt;b> End If</b></p><p> Combo1.Clear</p><p> Combo2.Clear</p><p> Set DataGrid1.DataSource = Nothing</p><p> opt = Index</p><p> If Index =
128、 0 Then '按班級(jí)查詢</p><p> Label1.Caption = "請(qǐng)選擇班級(jí)"</p><p> Label2.Caption = "請(qǐng)選擇課程"</p><p> ElseIf Index = 1 Then
129、9;按學(xué)號(hào)查詢</p><p> Label1.Caption = "請(qǐng)選擇班級(jí)"</p><p> Label2.Caption = "請(qǐng)選擇學(xué)號(hào)"</p><p><b> End If</b></p><p> Adodc2.RecordSource = "
130、select distinct 班級(jí)名稱 from 班級(jí)課程表"</p><p> Adodc2.Refresh</p><p> Do While Adodc2.Recordset.EOF = False</p><p> Combo1.AddItem Adodc2.Recordset.Fields(0)</p><p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- sql學(xué)生成績(jī)管理系統(tǒng)課程設(shè)計(jì)數(shù)據(jù)庫
- sql數(shù)據(jù)庫課程設(shè)計(jì)--學(xué)生成績(jī)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 數(shù)據(jù)庫課程設(shè)計(jì)---學(xué)生成績(jī)管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 學(xué)生成績(jī)管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)---學(xué)生成績(jī)管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計(jì)(學(xué)生成績(jī)管理系統(tǒng))
- 數(shù)據(jù)庫課程設(shè)計(jì)--學(xué)生成績(jī)管理系統(tǒng)
- 學(xué)生成績(jī)管理系統(tǒng)-數(shù)據(jù)庫課程設(shè)計(jì)
- 學(xué)生成績(jī)管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計(jì)
- 數(shù)據(jù)庫學(xué)生成績(jī)管理系統(tǒng)課程設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)——學(xué)生成績(jī)管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計(jì)--學(xué)生成績(jī)管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計(jì)----學(xué)生成績(jī)管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計(jì)--學(xué)生成績(jī)管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計(jì)--- 學(xué)生成績(jī)管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計(jì)--學(xué)生成績(jī)管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計(jì)----學(xué)生成績(jī)管理系統(tǒng)
- 學(xué)生成績(jī)管理系統(tǒng)-數(shù)據(jù)庫課程設(shè)計(jì)
- 學(xué)生成績(jī)管理系統(tǒng)-數(shù)據(jù)庫課程設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--學(xué)生成績(jī)管理系統(tǒng)
評(píng)論
0/150
提交評(píng)論