版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 課程設(shè)計(jì)報(bào)告</b></p><p> 科 目: 軟件工程概論 </p><p> 設(shè)計(jì)題目: 學(xué)生學(xué)籍管理系統(tǒng) </p><p> 專 業(yè): 軟件工程09-1班 </p><p>
2、 姓 名: XXXXX </p><p><b> XXXXX </b></p><p><b> 學(xué)生學(xué)籍管理</b></p><p><b> 需求分析</b></p><p><b> 開(kāi)發(fā)環(huán)境和軟件
3、</b></p><p> ?。?) 操作系統(tǒng):Windows xp</p><p> ?。?) 數(shù)據(jù)庫(kù)軟件:SQL Server 2000</p><p> ?。?) Java開(kāi)發(fā)工具:</p><p> 系統(tǒng)設(shè)計(jì)與功能分析 </p><p> 學(xué)生信息管理系統(tǒng),可用于學(xué)校等機(jī)構(gòu)的學(xué)生信息管理,查詢,
4、更新與維護(hù),使用方便,易用性強(qiáng),圖形界面清晰明了。該軟件用java語(yǔ)言編寫,用SQLServer2000數(shù)據(jù)庫(kù)作為后臺(tái)的數(shù)據(jù)庫(kù)進(jìn)行信息的存儲(chǔ),用SQL語(yǔ)句完成學(xué)生學(xué)籍信息的添加,查詢,修改,刪除的操作以及成績(jī)的錄入,修改,刪除等。用ODBC驅(qū)動(dòng)實(shí)現(xiàn)前臺(tái)Java與后臺(tái)SQL數(shù)據(jù)庫(kù)的連接。Java語(yǔ)言跨平臺(tái)性強(qiáng),可以在windows,linux,ubuntu等系統(tǒng)下使用,方便簡(jiǎn)單,安全性好。SQLServer2000數(shù)據(jù)庫(kù)高效安全,兩者結(jié)合
5、可相互利用各自的優(yōu)勢(shì)。</p><p> 該系統(tǒng)實(shí)現(xiàn)的大致功能:</p><p> 用戶登陸界面。該界面可以選擇使用者的身份,“管理員,教師,學(xué)生”。不同的身份有不同的操作界面和功能權(quán)限。ID號(hào)和密碼輸入正確即可登錄。學(xué)生管理界面。提供了學(xué)生學(xué)籍信息的查詢,修改登錄密碼等功能。</p><p> 教師管理界面。提供了對(duì)學(xué)生學(xué)籍信息的查詢,添加,修改,刪除。修改
6、密碼等功能。</p><p> 管理員管理界面。擁有最高的權(quán)限。允許添加教師信息。</p><p> 登錄的用戶信息分別存儲(chǔ)在SQL數(shù)據(jù)庫(kù)的“管理員信息表”, “教師信息表”, “學(xué)生表”中,如果用戶信息不存在則三張表中,將會(huì)無(wú)權(quán)利登錄本管理系統(tǒng)。</p><p> 保證了本學(xué)生管理系統(tǒng)的安全性。</p><p><b>
7、二. 系統(tǒng)概要設(shè)計(jì)</b></p><p><b> 1.?dāng)?shù)據(jù)需求:</b></p><p><b> (1)數(shù)據(jù)字典</b></p><p><b> 實(shí)體屬性表:</b></p><p><b> 系統(tǒng)邏輯結(jié)構(gòu)設(shè)計(jì)</b></
8、p><p><b> 教師信息表:</b></p><p><b> 管理員信息表:</b></p><p><b> 學(xué)生表:</b></p><p><b> ?。?)數(shù)據(jù)流圖</b></p><p><b> 第
9、一層</b></p><p><b> 學(xué)生名單</b></p><p> 學(xué)生信息 </p><p><b> 成績(jī)</b></p><p> 統(tǒng)計(jì)表 成績(jī)單</p>
10、<p><b> 第二層</b></p><p> 學(xué)生信息 成績(jī)</p><p> 班平均成績(jī)
11、 升留級(jí)表 </p><p><b> 各科平均成績(jī)</b></p><p><b> 第三層</b></p><p> 學(xué)生信息 合格單 新生信息</p><p><b> 第四層</b></p&
12、gt;<p><b> 班級(jí)</b></p><p><b> 學(xué)生信息</b></p><p><b> 統(tǒng)計(jì)成績(jī) </b></p><p><b> 各科</b></p><p><b> 第五層</b>&
13、lt;/p><p> 學(xué)生信息 升留級(jí)名單 學(xué)生記錄</p><p><b> 2.功能需求:</b></p><p> (1)實(shí)現(xiàn)學(xué)生基本情況的錄入,修改,刪除等基本操作。</p><p> ?。?)對(duì)學(xué)生基本信息提供靈活的查詢方式。&l
14、t;/p><p> (3)完成一個(gè)班級(jí)的學(xué)期選課功能。</p><p> ?。?)實(shí)現(xiàn)學(xué)生成績(jī)的錄入,修改,刪除等基本操作。</p><p> ?。?)能方便的對(duì)學(xué)生的個(gè)人學(xué)期成績(jī)進(jìn)行查詢。</p><p> ?。?)具有成績(jī)統(tǒng)計(jì),排名等功能。</p><p> ?。?)具有留級(jí),休學(xué)等特殊情況的處理功能。</p&
15、gt;<p> (8)能輸出常用的各種報(bào)表。</p><p> ?。?)具有數(shù)據(jù)備份和數(shù)據(jù)恢復(fù)功能。</p><p><b> 三.系統(tǒng)詳細(xì)設(shè)計(jì)</b></p><p><b> 1.概念結(jié)構(gòu)設(shè)計(jì)</b></p><p><b> 局部ER圖</b><
16、;/p><p><b> 整體的ER圖</b></p><p><b> 2. 邏輯結(jié)構(gòu)設(shè)計(jì)</b></p><p> (1)ER圖轉(zhuǎn)換為關(guān)系模型</p><p> 由ER圖可見(jiàn):圖中有三個(gè)實(shí)體:學(xué)生,課程,和專業(yè);三個(gè)關(guān)系:學(xué)生選課關(guān)系,學(xué)生與專業(yè)之間的屬于關(guān)系,專業(yè)的課程設(shè)置。</p&
17、gt;<p> 由于每個(gè)實(shí)體必須構(gòu)造表,所以可以先得到三個(gè)實(shí)體的信息表,實(shí)體的碼就是關(guān)系的碼,實(shí)體的屬性即關(guān)系模型的屬性:</p><p> 學(xué)生基本信息表: S (sno, sname, ssex, sbirth, spasw) </p><p> 課程基本信息表: C (cno, cname, cperiord)</p><p> 專業(yè)基本
18、信息表: P (pno, pname, pnum, psdept)</p><p> 對(duì)應(yīng)的屬性分別為:學(xué)號(hào),姓名,性別,出生日期,登陸密碼</p><p> 課程編號(hào),課程名,學(xué)期</p><p> 專業(yè)編號(hào),專業(yè)名,專業(yè)人數(shù),所在院系</p><p> 對(duì)于多對(duì)多的關(guān)系來(lái)說(shuō),與該聯(lián)系相連的實(shí)體的碼以及本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,
19、各實(shí)體之間的碼組成關(guān)系的碼或者關(guān)系的碼的一部分。 以上ER圖的三個(gè)聯(lián)系為多對(duì)多,所以轉(zhuǎn)換為關(guān)系模式為:</p><p> 課程設(shè)置表:pc ( pno, psenior, cno) 與設(shè)置相連的實(shí)體有專業(yè)和課程,根據(jù)多對(duì)多的轉(zhuǎn)換原則:專業(yè)的碼pno,課程的碼cno以及設(shè)置本身的屬性共同構(gòu)成該關(guān)系模式的碼,所以該關(guān)系模式的碼為全碼。</p><p> 學(xué)生選課表:SC (sno, pse
20、nior, cno, grade)與選課相連的實(shí)體有學(xué)生和課程,同上由學(xué)生的碼sno,課程的碼cno以及選課本身的碼psenior構(gòu)成該關(guān)系模式的碼,即(sno,cno,psenior)。此外,選課表還有一個(gè)非主屬性grade。</p><p> 學(xué)生與專業(yè)的屬于表:SP(sno,pno)與屬于關(guān)系相聯(lián)的實(shí)體是學(xué)生和專業(yè)。同上由學(xué)生的碼sno,專業(yè)的碼pno構(gòu)成該關(guān)系模式的碼,由于此關(guān)系沒(méi)有其他的碼也就沒(méi)有非主
21、屬性。</p><p> (2)關(guān)系模式的優(yōu)化:</p><p> 學(xué)生表 s (sno,sname,ssex,sbirth,spasw)</p><p> 該關(guān)系模式的碼為sno,由于只有一個(gè)碼,所以不存在非主屬性對(duì)碼的部分函數(shù)依賴,可以達(dá)到2NCF。另外,該關(guān)系模式的函數(shù)依賴為: sno -> sname, sno -> ssex, sno -
22、> ssex,</p><p> sno -> sbirth, sno -> spasw,其間不存在傳遞依賴,故學(xué)生表可達(dá)到3NCF.</p><p> 課程表 C ( cno ,cname , cperiod)</p><p> 該關(guān)系模式的碼為cno, cname,設(shè)主碼為cno,因?yàn)樵撽P(guān)系模式中的碼都是單一的,即不存在有兩個(gè)或者兩個(gè)以
23、上的屬性組成的碼,所以不存在非主屬性對(duì)碼的部分函數(shù)依賴,可以達(dá)到2NCF。另外,該關(guān)系模式的函數(shù)依賴為:cno->cname, cno->cperiod, cname ->cno ,cname -> cperiod. 因?yàn)閏no -> cname,cname -> cperiod cno -> cperiod, 所以該關(guān)系模式中存在傳遞依賴,不能達(dá)到3NCF。故優(yōu)化
24、該表為:C1(cno,period),C2(cname,cperiod).從而兩表都達(dá)到了3NCF。</p><p> 專業(yè)表 P (pno,pname,pnum,pdept)</p><p> 該關(guān)系模式的碼為pno,pname,其中設(shè)定pno為主碼。同課程表,該表不存在有兩個(gè)或者兩個(gè)以上屬性組成的碼,即不存在非主屬性對(duì)碼的部分函數(shù)依賴,故可達(dá)到2NCF。另外,此關(guān)系模式的函數(shù)依賴為
25、:pno->pname, pno-> pnum, pno -> pdept , pname -> pno, pname-></p><p> pnum, pname -> pdept; 由于存在傳遞依賴:pno -> pname, pname->pnum, pno -> pnum., 所以未能達(dá)到3NCF。優(yōu)化分解為:P1 (pno,pnum,pde
26、pt), P2 (pname,pnum,pdept)</p><p> 明顯,兩表都達(dá)到了3NCF.</p><p> 課程設(shè)置表PC(pno,psenior,cno),</p><p> 該關(guān)系模式的碼為:(pno,psenior,cno)為全碼,所以可直接達(dá)到3NCF</p><p> 學(xué)生選課表 SC(sno,psenior,c
27、no,grade)</p><p> 該關(guān)系模式的碼為:(sno,psenior,cno),因?yàn)椴淮嬖诜侵餍詆rade對(duì)碼的部分函數(shù)依賴,所以可達(dá)到2NCF,由于不存在函數(shù)依賴(表中的函數(shù)依賴只有(sno,psenior,cno)-> grade)故也達(dá)到了3NCF</p><p> 屬于表 SP(sno,pno)</p><p> 該關(guān)系模式的碼(s
28、no,pno)也是全碼,所以也達(dá)到了3NCF</p><p> 用戶表 U(uname,upasw)</p><p> 該表的碼為uname,明顯upasw對(duì)碼uname是完全函數(shù)依賴的,從而達(dá)到2NCF。另外因?yàn)橹挥袃蓚€(gè)屬性,所以不存在傳遞函數(shù)依賴,該表達(dá)到了3NCF</p><p><b> 物理結(jié)構(gòu)設(shè)計(jì)</b></p>
29、<p><b> ?。?)基本表</b></p><p><b> 學(xué)生表s</b></p><p><b> 課程表 c1</b></p><p><b> 課程表c2</b></p><p><b> 專業(yè)表p1</
30、b></p><p><b> 專業(yè)表p2</b></p><p><b> 課程設(shè)置表 pc</b></p><p><b> 學(xué)生選課表sc</b></p><p> 學(xué)生與專業(yè)屬于表sp</p><p><b> 管理人員
31、密碼表u</b></p><p><b> (2)視圖,索引</b></p><p> a.索引:本數(shù)據(jù)庫(kù)中的表除了主鍵本身生成的主索引外,沒(méi)有定義其他的索引。在查詢時(shí)即引用主索引即可。</p><p> 表s的主索引列為:sno</p><p> 表c1的主索引列為:cno</p>&
32、lt;p> 表c2的主索引列為:cname</p><p> 表p1的主索引列為:pno</p><p> 表p2的主索引列為:pname</p><p> 表sc的主索引列為:(pno,psenior,cno)</p><p> 表sp的主索引列為:(sno,pno)</p><p> 表u的主索引
33、列為:uname</p><p> b.視圖:雖然關(guān)系數(shù)據(jù)模型分析的結(jié)果表示該數(shù)據(jù)庫(kù)需要定義不同的用戶視圖,但考慮到數(shù)據(jù)庫(kù)與前臺(tái)開(kāi)發(fā)程序的連接比較復(fù)雜,所以該數(shù)據(jù)庫(kù)中沒(méi)有單獨(dú)定義用戶視圖,不同的用戶視圖被有選擇性的的select語(yǔ)句的結(jié)果集取.</p><p><b> 4.系統(tǒng)功能設(shè)計(jì)</b></p><p><b> 四.系
34、統(tǒng)測(cè)試方案</b></p><p> 1. 建立數(shù)據(jù)庫(kù)模式、視圖及索引</p><p> 以下將對(duì)數(shù)據(jù)庫(kù)進(jìn)行實(shí)現(xiàn),實(shí)現(xiàn)的環(huán)境為 SQL SERVER2000。</p><p> create database Expulsion</p><p><b> on</b></p><p
35、><b> (</b></p><p> name=Expulsion,</p><p> filename='D:\Test\SQL\Expulsion\expulsion.mdf',</p><p><b> size=5,</b></p><p> filegr
36、owth=10%,</p><p> maxsize=10 </p><p><b> )</b></p><p><b> log on</b></p><p><b> (</b></p><p> name=expulsion_log,
37、</p><p> filename='D:\Test\SQL\Expulsion\expulsion_log.ldf',</p><p><b> size=5,</b></p><p> filegrowth=10%,</p><p> maxsize=10</p><p&
38、gt;<b> )</b></p><p><b> go</b></p><p> use Expulsion</p><p><b> go</b></p><p> (1). 建立管理員表</p><p> create table t
39、b_Admin</p><p><b> (</b></p><p> admin_ID int identity, </p><p> admin_User varchar(10) not null,</p><p> admin_Pass varchar(20) not null,</p>&l
40、t;p> admin_Perm int not null,</p><p> constraint pk_Admin primary key (admin_ID)</p><p><b> )</b></p><p><b> go </b></p><p> (2). 登陸日志表&
41、lt;/p><p> create table tb_Log</p><p><b> (</b></p><p> log_ID int identity,</p><p> log_UsID int,</p><p> log_Time smalldatetime default get
42、Date(),</p><p> log_IP varchar(16),</p><p> constraint pk_Log primary key (log_ID),</p><p> constraint fk_Log_Admin foreign key (log_UsID) references tb_Admin(admin_ID),</p>
43、;<p><b> )</b></p><p><b> go</b></p><p><b> (3). 院系表</b></p><p> create table tb_Department</p><p><b> (</b>
44、</p><p> depart_ID int,</p><p> depart_Name varchar(40) not null, --院系名</p><p> depart_Dire varchar(10), --系主任</p><p> depart_Note varchar(200),</p><p>
45、; constraint pk_Depart primary key (Depart_ID),</p><p><b> )</b></p><p><b> go</b></p><p><b> (4). 課程表</b></p><p> create table
46、 tb_Course</p><p><b> (</b></p><p> course_ID int,</p><p> course_Name varchar(20),</p><p> course_PrNo int , --先行課號(hào)</p><p> course_credit
47、 int not null,</p><p> course_Note varchar(200),--備注</p><p> constraint pk_Course primary key (course_ID),</p><p> constraint fk_Course foreign key (course_PrNo) references tb_Co
48、urse(course_ID)</p><p><b> )</b></p><p><b> go</b></p><p><b> (5). 專業(yè)表</b></p><p> create table tb_Professional</p><p
49、><b> (</b></p><p> prof_ID int,</p><p> prof_DeID int,--院系編號(hào)</p><p> prof_Name varchar(40),--專業(yè)名</p><p> prof_Note varchar(200)</p><p>
50、 constraint pk_Prof primary key (prof_ID),</p><p> constraint fk_Prof_Depart foreign key (prof_DeID) references tb_Department(depart_ID)</p><p> on delete cascade </p><p> on up
51、date cascade,</p><p><b> )</b></p><p><b> go</b></p><p><b> (6). 班級(jí)表</b></p><p> create table tb_Class</p><p><b
52、> (</b></p><p> class_ID int,</p><p> class_Year varchar(4) default Year(getDate()),--入學(xué)年份哪一級(jí)的</p><p> class_PrID int,--專業(yè)編號(hào)</p><p> class_Name varchar(40
53、),</p><p> class_Inst varchar(10),--指導(dǎo)員instructor</p><p> class_Note varchar(200),</p><p> constraint pk_Class primary key (class_ID),</p><p> constraint fk_Class_P
54、rof foreign key (class_PrID) references tb_Professional(prof_ID)</p><p> on delete cascade</p><p> on update cascade, </p><p><b> )</b></p><p><b>
55、; go</b></p><p> (7). 學(xué)生信息表</p><p> create table tb_Information</p><p><b> (</b></p><p> info_No varchar(20),</p><p> info_Name var
56、char(10),</p><p> info_Sex char(2) check(info_Sex in('男','女')),</p><p> info_Birt varchar(10),</p><p> info_NaFa varchar(8) default '漢族',</p><p
57、> info_Bipl varchar(10) default '山東省',--籍貫</p><p> info_Addr varchar(50),</p><p> info_Post char(6), --郵政編碼</p><p> info_Tele varchar(20),</p><p> info_
58、ID char(18),--返回不帶前導(dǎo)空格(LTrim)、后續(xù)空格(RTrim) 或前導(dǎo)與后續(xù)空格(Trim) 的字符串副本。</p><p> info_PoLa varchar(10) check( rtrim(info_PoLa) in ('其他', '群眾','共青團(tuán)','中共黨員')),</p><p> in
59、fo_Phot varchar(100),</p><p> info_Year varchar(10),--入學(xué)時(shí)間</p><p> info_Depa int, --院系</p><p> info_Prof int, --專業(yè)</p><p> info_Clas int, --班級(jí)</p><p>
60、 info_Note varchar(1000),</p><p> constraint pk_Info primary key(info_No),</p><p> constraint fk_Info_clas foreign key (info_Clas) references tb_Class (Class_ID)</p><p> on delet
61、e cascade </p><p> on update cascade,</p><p><b> ) </b></p><p><b> go</b></p><p> (8). 學(xué)生成績(jī)表</p><p> create table tb_Result&l
62、t;/p><p><b> (</b></p><p> resu_ID int,--成績(jī)編號(hào)</p><p> resu_CoID int,--課程號(hào)</p><p> resu_Year varchar(4), --年份</p><p> resu_Term char(2) check(
63、resu_Term in ('上','下')),--學(xué)期</p><p> resu_Scor int not null default '0',</p><p> constraint pk_Resu primary key(resu_ID,resu_CoID),</p><p> constraint fk_
64、Resu_Cour foreign key (resu_CoID) references tb_Course(Course_ID)</p><p> on delete cascade </p><p> on update cascade,</p><p><b> ) </b></p><p><b>
65、; go</b></p><p><b> (9). 獎(jiǎng)罰記錄</b></p><p> create table tb_RewardPunishment</p><p><b> (</b></p><p> rePu_ID int identity,</p>
66、<p> rePu_Type varchar(4) check(rePu_Type in('獎(jiǎng)勵(lì)','懲罰')),</p><p> rePu_Time varchar(10) not null,</p><p> rePu_Note varchar(1000) not null,</p><p> constrai
67、nt pk_RePu primary key (rePu_ID),</p><p><b> )</b></p><p> (10). 專業(yè)課程聯(lián)系表</p><p><b> go</b></p><p> create table tb_Prof_Cour</p><
68、p><b> (</b></p><p> course_ID int,</p><p> prof_ID int,</p><p> constraint pk_Prof_Cour primary key(course_ID,prof_ID),</p><p> constraint fk_Prof_C
69、our_Cour foreign key(course_ID) references tb_Course(course_ID), </p><p> constraint fk_Prof_Cour_Prof foreign key(prof_ID) references tb_Professional(prof_ID),</p><p><b> )</b>&
70、lt;/p><p><b> go</b></p><p> (11). 課程學(xué)生聯(lián)系表</p><p> create table tb_Cour_Info</p><p><b> (</b></p><p> info_No varchar(20),</p&
71、gt;<p> course_ID int,</p><p> constraint pk_Cour_Info primary key(info_No,course_ID),</p><p> constraint fk_Cour_Info_Info foreign key(info_No) references tb_Information(info_No),<
72、/p><p> constraint fk_Cour_Info_Cour foreign key(course_ID) references tb_Course(course_ID),</p><p><b> )</b></p><p><b> go</b></p><p> (12). 學(xué)
73、生獎(jiǎng)懲聯(lián)系</p><p> create table tb_Info_RePu</p><p><b> (</b></p><p> info_No varchar(20),</p><p> rePu_ID int,</p><p> constraint pk_Info_RePu
74、 primary key(info_No,rePu_ID),</p><p> constraint fk_Info_RePu_Info foreign key(info_No) references tb_Information(info_No),</p><p> constraint fk_Info_RePu_RePu foreign key(rePu_ID) reference
75、s tb_RewardPunishment(rePu_ID)</p><p><b> )</b></p><p><b> go</b></p><p> (13). 學(xué)生成績(jī)聯(lián)系</p><p> create table Info_Resu</p><p>&l
76、t;b> (</b></p><p> info_No varchar(20),</p><p> resu_ID int,</p><p> resu_CoID int,</p><p> constraint pk_Info_Resu primary key(info_No,resu_ID,resu_CoID)
77、,</p><p> constraint fk_Info_Resu_Info foreign key(info_No) references tb_Information(info_No),</p><p> constraint fk_Info_Resu_Resu_ID foreign key(resu_ID,resu_CoID) references tb_Result(resu
78、_ID,resu_CoID),</p><p><b> )</b></p><p> use Expulsion</p><p><b> go</b></p><p> 查看某用戶的登錄日志</p><p> create view vi_Admin_Log(
79、UserName,IP,LoginTime) as</p><p> select a.admin_User,l.log_IP,l.log_Time</p><p> from tb_Admin as a,tb_Log as l where a.admin_ID=l.log_UsID</p><p><b> go</b></p&g
80、t;<p> select * from vi_Admin_Log where UserName='cache'</p><p><b> go</b></p><p><b> 建立專業(yè)課程視圖</b></p><p> create view vi_Prof_Cour(Profes
81、sional,Course,Credit,Note) as</p><p> select p.prof_Name,c.course_Name,c.course_credit,c.course_Note</p><p> from tb_Professional as p,tb_Course as c, tb_Prof_Cour as pc</p><p>
82、where p.prof_ID=pc.prof_ID and c.course_ID=pc.course_ID</p><p><b> go</b></p><p> select * from vi_Prof_Cour</p><p><b> go</b></p><p><b&g
83、t; 查看學(xué)生獎(jiǎng)懲信息</b></p><p> create view vi_Info_RePu(Sno,Name,Prof,Clas,rePu_Type,rePu_Time,Note) as</p><p> select i.info_No,i.info_Name,p.prof_Name,c.class_Name,r.rePu_Type,r.rePu_Time,r.
84、rePu_Note</p><p> from tb_Information as i,tb_RewardPunishment as r, tb_Info_RePu as ir,tb_Professional as p,tb_Class as c</p><p> where i.info_No=ir.info_No and r.rePu_ID = ir.rePu_ID and p.p
85、rof_ID=i.info_Prof and c.class_ID=i.info_Clas</p><p><b> go </b></p><p> select * from vi_Info_RePu</p><p><b> go</b></p><p><b> 建立學(xué)生成
86、績(jī)視圖</b></p><p> create view vi_Info_Resu(Sno,Name,Prof,Clas,Cour,RYea,Term,Scor) as</p><p> select i.info_No,i.info_Name,p.prof_Name,c.class_Name,co.course_Name,r.resu_Year,r.resu_Term,r
87、.resu_Scor</p><p> from tb_Information as i,tb_Result as r, tb_Info_Resu as ir, tb_Professional as p,tb_Class as c,tb_Course as co</p><p> where i.info_No =ir.info_No and r.resu_CoID=ir.resu_C
88、oID and r.resu_ID=ir.resu_ID and co.course_ID=r.resu_CoID and p.prof_ID=i.info_Prof and c.class_ID=i.info_Clas </p><p><b> go</b></p><p> select * from vi_Info_Resu</p><
89、p><b> 2. 裝載數(shù)據(jù)</b></p><p> use Expulsion</p><p><b> go</b></p><p><b> 插入用戶表</b></p><p> insert tb_Admin (admin_Pass,admin_Per
90、m,admin_User)</p><p> values ('123',1,'cache')--0普通用戶,管理員</p><p><b> go</b></p><p><b> 插入登錄日志表</b></p><p> insert tb_Log (lo
91、g_UsID,log_IP) </p><p> values (1,'192.168.1.109')</p><p><b> go</b></p><p><b> 插入系院表</b></p><p> insert tb_Department (depart_ID,de
92、part_Name,depart_Dire,depart_Note)</p><p> values (1,'信息工程學(xué)院','韓劍 ','青島濱海學(xué)院')</p><p><b> go</b></p><p><b> 插入課程表</b></p>&l
93、t;p> insert tb_Course (course_ID,course_Name,course_PrNo,course_credit,course_Note)</p><p> values(1,'數(shù)據(jù)庫(kù)原理',1,2,'一門重要的課程')</p><p><b> go</b></p><p&g
94、t;<b> 插入專業(yè)表</b></p><p> insert tb_Professional (prof_ID,prof_DeID,prof_Name,prof_Note)</p><p> values (1,1,'軟件工程','09軟件工程')</p><p><b> go</b
95、></p><p><b> 插入班級(jí)表</b></p><p> insert tb_Class (class_ID,class_Inst,class_Name,class_PrID,class_Year,class_Note)</p><p> values (2,'曹鋒','09軟件工程',1,
96、'09','')</p><p><b> go</b></p><p><b> 插入學(xué)生信息表</b></p><p> insert tb_Information(info_No,info_Name,info_Sex,info_Birt,info_NaFa,info_Bipl,i
97、nfo_Addr,info_Post,info_Tele,info_Year,info_Depa,info_Prof,info_Clas)</p><p> values('20090520101','曹鋒','男','1988-12-6','漢族','山東省','濰坊市','262100
98、39;,'13478518975','2009-9-1',1,1,2)</p><p><b> go</b></p><p><b> 插入成績(jī)表</b></p><p> insert tb_Result(resu_ID,resu_clas,resu_CoID,resu_Year,
99、resu_Term,resu_Scor)</p><p> values(1,2,1,'2009','下','90')</p><p><b> go</b></p><p><b> 插入獎(jiǎng)懲表</b></p><p> insert tb_
100、RewardPunishment (rePu_Type,rePu_Time,rePu_Note)</p><p> values('獎(jiǎng)勵(lì)','2009-1-1','*******')</p><p><b> go</b></p><p> 插入聯(lián)系表tb_Prof_Cour</p&g
101、t;<p> insert tb_Prof_Cour (course_ID,prof_ID) values(1,1)</p><p><b> go</b></p><p> 插入聯(lián)系表tb_Info_RePu</p><p> insert tb_Info_RePu (info_No,rePu_ID) values(
102、39;20080520101',1)</p><p><b> go</b></p><p> 插入聯(lián)系表tb_Info_Resu</p><p> insert tb_Info_Resu (info_No,resu_ID,resu_CoID) values('20080520101',1,1)</p>
103、<p><b> JAVA程序</b></p><p> package ms;</p><p> import java.awt.BorderLayout;</p><p> import java.awt.GridLayout;</p><p> import java.awt.TextAre
104、a;</p><p> import java.awt.TextField;</p><p> import java.awt.event.ActionEvent;</p><p> import java.awt.event.ActionListener;</p><p> import java.awt.event.WindowA
105、dapter;</p><p> import java.awt.event.WindowEvent;</p><p> import javax.swing.ImageIcon;</p><p> import javax.swing.JButton;</p><p> import javax.swing.JDialog;<
106、/p><p> import javax.swing.JFrame;</p><p> import javax.swing.JLabel;</p><p> import javax.swing.JOptionPane;</p><p> import javax.swing.JPanel;</p><p>
107、public class AdminGUI</p><p><b> {</b></p><p> JDialog log=null;//管理員登陸主窗口</p><p> JPanel jp1=null;//用于存放管理員登陸標(biāo)簽 和 jp5</p><p> JPanel jp2=null;//用于存放查詢
108、修改 增加 刪除 按鈕</p><p> JPanel jp3=null;//用于存放信息塊 和jp5</p><p> JPanel jp4=null;//用于存放 修改 插入 刪除 按鈕</p><p> JPanel jp5=null;//用于存放請(qǐng)輸入學(xué)號(hào) 文本框</p><p> JLabel jadminLog=nul
109、l; //管理員登陸標(biāo)簽</p><p> JLabel jLabel=null; //請(qǐng)輸入學(xué)號(hào) 標(biāo)簽</p><p> TextField tf=null;//請(qǐng)輸入學(xué)號(hào) 文本框</p><p> JButton jb1=null;//查詢 按鈕</p><p> JButton jb2=null;//修改 按鈕</p&
110、gt;<p> JButton jb3=null;//增加 按鈕</p><p> JButton jb4=null;//刪除按鈕</p><p> JButton jb5=null; //列出全部學(xué)生信息</p><p> JButton jb6=null; //退出</p><p> TextArea ta=nul
111、l;//信息文本框</p><p> JLabel jl=null; //用于站位</p><p> String id=null; //用于保存用戶輸入查詢學(xué)號(hào)</p><p> TextField[] jtf = new TextField[9] ;</p><p> JDialog jdialog=null;</p>
112、<p> public AdminGUI(JFrame log)</p><p><b> {</b></p><p><b> super();</b></p><p> this.log = new JDialog(log,"管理員登陸",true);</p>&
113、lt;p> jp1=new JPanel();</p><p> jp2=new JPanel();</p><p> jp3=new JPanel();</p><p> jp4=new JPanel();</p><p> jp5=new JPanel();</p><p> jadminLog=
114、new JLabel(new ImageIcon("image/admin.jpg"));</p><p> jLabel=new JLabel("請(qǐng)輸入學(xué)號(hào)");</p><p> tf=new TextField();</p><p> jb1=new JButton("查詢");</p&g
115、t;<p> jb2=new JButton("修改");</p><p> jb3=new JButton("增加");</p><p> jb4=new JButton("刪除");</p><p> jb5=new JButton("全部學(xué)生信息");<
116、/p><p> jb6=new JButton("退出");</p><p> ta=new TextArea("點(diǎn)擊查詢按鈕將在此顯示查詢信息");</p><p> jl=new JLabel();</p><p><b> }</b></p><p&g
117、t; public void adminGo()</p><p><b> {</b></p><p> BorderLayout bl=new BorderLayout();</p><p> bl.setVgap(30);</p><p> bl.setHgap(30);</p><p&
118、gt; log.setLayout(bl);</p><p> log.add(jp1,BorderLayout.NORTH);</p><p> BorderLayout bl1=new BorderLayout();</p><p> bl1.setVgap(20);</p><p> jp1.setLayout(bl1);&l
119、t;/p><p> jp1.add(jadminLog,BorderLayout.CENTER);</p><p> jp5.setLayout(new GridLayout(1,2,200,200));</p><p> jp5.add(jLabel);</p><p> jp5.add(tf);</p><p>
120、; log.add(jp2,BorderLayout.WEST);</p><p> jp2.setLayout(new GridLayout(1,1,20,300));</p><p> log.add(jp3,BorderLayout.CENTER);</p><p> jp3.setLayout(new BorderLayout(10, 10));&l
121、t;/p><p> jp3.add(jp5,BorderLayout.NORTH);</p><p> jp3.add(ta);</p><p> jp5.setLayout(new GridLayout(1,5,10,10));</p><p> jp5.add(jLabel);</p><p> jp5.ad
122、d(tf);</p><p> log.add(jp4,BorderLayout.SOUTH);</p><p> jp4.setLayout(new GridLayout(1,3,20,30));</p><p> jp4.add(jb5);</p><p> jp4.add(jb1);</p><p>
123、jp4.add(jb2);</p><p> jp4.add(jb3);</p><p> jp4.add(jb4);</p><p> jp4.add(jb6);</p><p> log.addWindowListener(new WindowAdapter()</p><p><b> {&l
124、t;/b></p><p><b> @Override</b></p><p> public void windowClosing(WindowEvent e)</p><p><b> {</b></p><p> System.exit(0);</p><p
125、><b> }</b></p><p><b> });</b></p><p> jb1.addActionListener(new ActionListener()</p><p><b> {</b></p><p><b> @Override
126、</b></p><p> public void actionPerformed(ActionEvent e)</p><p><b> {</b></p><p> AdminGUI.this.id=AdminGUI.this.tf.getText();</p><p> Select sel=n
127、ew Select();</p><p> sel.selectStudent(AdminGUI.this.id);</p><p> if(sel.getStudent()!=null)</p><p><b> {</b></p><p> Student student=sel.getStudent();&
128、lt;/p><p> AdminGUI.this.ta.setText("學(xué)號(hào)\t\t"+"姓名\t\t"+"性別\t\t"+"出生日期\t\t"+"民族\t\t"+"籍貫\t\t"+"專業(yè)\t\t"+"班級(jí)\t\t"+"聯(lián)系電話\t\t"
129、;+"密碼\t\t");</p><p> AdminGUI.this.ta.append("\n"+student.getId()+"\t\t"+student.getName()+"\t\t"+student.getSex()+"\t\t"+student.getBornDate()+"\t\t&q
130、uot;</p><p> +student.getNationality()+"\t\t"+student.getNationality()+"\t\t"+student.getMaj()+"\t"</p><p> +student.getCla()+"\t\t"+student.getTelNum()
131、+"\t\t"+student.getPassword()+"\n");</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> AdminGUI.
132、this.ta.setText("查無(wú)此人");}</p><p><b> }</b></p><p><b> });</b></p><p> jb5.addActionListener(new ActionListener()</p><p><b>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)生學(xué)籍管理系統(tǒng)-軟件工程課程設(shè)計(jì)
- 軟件工程課程設(shè)計(jì)--學(xué)籍管理系統(tǒng)
- 《軟件工程》課程設(shè)計(jì)--學(xué)生管理系統(tǒng)
- 軟件工程課程設(shè)計(jì)--學(xué)生管理系統(tǒng)
- 軟件工程課程設(shè)計(jì)——學(xué)生管理系統(tǒng)
- 軟件工程課程設(shè)計(jì)---學(xué)籍管理系統(tǒng)的分析與設(shè)計(jì)
- 軟件工程導(dǎo)論課設(shè)-超市管理系統(tǒng)課程設(shè)計(jì)
- 停車場(chǎng)管理系統(tǒng)-軟件工程導(dǎo)論課程設(shè)計(jì)
- 軟件工程導(dǎo)論課程設(shè)計(jì)-停車場(chǎng)管理系統(tǒng)
- 軟件工程課程設(shè)計(jì)---學(xué)生成績(jī)管理系統(tǒng)
- 軟件工程課程設(shè)計(jì)---學(xué)生信息管理系統(tǒng)
- 軟件工程課程設(shè)計(jì)--學(xué)生信息管理系統(tǒng)
- 軟件工程課程設(shè)計(jì)---學(xué)生信息管理系統(tǒng)
- 軟件工程課程設(shè)計(jì)--學(xué)生信息管理系統(tǒng)
- 軟件工程課程設(shè)計(jì)-學(xué)生信息管理系統(tǒng)
- 軟件工程課程設(shè)計(jì)--學(xué)生成績(jī)管理系統(tǒng)
- 軟件工程課程設(shè)計(jì)管理系統(tǒng)
- 學(xué)生選課系統(tǒng)《軟件工程》課程設(shè)計(jì)
- 軟件工程課程設(shè)計(jì)---學(xué)生信息管理系統(tǒng)
- 軟件工程課程設(shè)計(jì)-學(xué)生宿舍管理系統(tǒng)
評(píng)論
0/150
提交評(píng)論