学生选课系统设计实现.docx
- 文档编号:25828891
- 上传时间:2023-06-15
- 格式:DOCX
- 页数:31
- 大小:73.61KB
学生选课系统设计实现.docx
《学生选课系统设计实现.docx》由会员分享,可在线阅读,更多相关《学生选课系统设计实现.docx(31页珍藏版)》请在冰豆网上搜索。
学生选课系统设计实现
学生选课系统的设廿与实现
桶要:
INTERNE网是目前全球晟大的廿算讯通信网,它遍及全球几乎所有的国家和地区。
WWW系统是一个大塑的分布式超媒体信息数据库,它様推动了INTERNET的发展,已经应为INERNET中晟流行、E主要的信息服务方SoWWW技术只所以能在全球普及,一个車要的原因就是地与数据库管理系密H1互融合,成为一亍处理和共享信息的强大工具。
一方面,数据库是一种强大的信息管理工具,另一方而WWW提供了共享数据的方法。
两者强强联合取长补短,发挥各自优势,便用户可£1在WEB浏览器上方便地检索数据库的容。
因此I®着Internetff)发展,以往的手工H堂选澡不仅复杂,也牵枇了很多人力以及统廿数据的繁预。
为了城轻教务处工作,以及毎个学生更好的选择自己所喜欢的科目。
针对学生选课迪一环节,本系蔬U学生网上自主选课已经教师课椁发布两大方Efflli了设it,基本实现了朝师的课样发布,学生在线信息査询,选课功能以及教师课程管理等功能。
本文使用了VisualStudio2008和SQLServer2005作为开发工具,进行实验开发制作。
本系魏可以方便老师、学生更方便的选课。
实现全校学生选课在找查询。
if可以对新来的学生信息iSliffi息录入。
由于学生上课侑况复杂,可以实现信息修改,及时调整学生的基本悄况。
关猊词:
INTERNE学生选课数需库
1-引言3
1.1系统蔥艾3
1.2系统功能要求3
1.2.1用户功能说明3
1.2.2登陆模挟4
2.数据库设廿4
2.1数据库橱念4
2.2数据库便用的工具4
2.3系统榔念模里5
2.4fig库逆辑设计6
2.5数据库的物理实«7
2.5.1数摒库表7
2.5.2数稠库存储U程:
8
3系统使用15
3.1SR15
3.2学生选课系统注册21
3.3学生选课28
3.4査询34
总结39
参考文it40
1・引言
学生选课系统是一个学校不可缺少的部分,它的容对干学校的决策者和管理者来说胡至关亜1,所以学生选课系统应垓能够为用户提供充足的信息和快捷的査询手段。
但一直以来人们便用传筑人工的方衣管理文件苗案,逆种管卑方氏存在着弁多缺自,如:
效率低、性差,另外时同一长,冷产生大量的文件和数据,逆对于査找、更新和维护胡帑来了不少困难。
葩着科学技术的不斷提高,廿算机科学日帝应熟,其强大功能已为人们深刻认识,它已经人人类社会的各个領域并发挥着越来阿要的作用。
作为廿算机应用的一翎分,使用it算机对选澡信息afita,有着手工管理所无法比扭的优点。
例如:
检索ifi速、查找方便、可靠性高、存储量夫、性好、寿命长、成本低等。
这些优点能皤机提高人事劳资管理的效率,也是企业的科学化、正规化管理,与世界接轨的車要条件。
因此,开发这样一套软件应为很有必要的事情。
1.2系统功能要求
本系缆用户分为3类:
(1)学生;
(2)教师;(3)管理者。
1.2.1用户功能说明
学生:
可以査看选修ttSfL已芫成的课棺、课样老师的信息等教师:
可以査看课程的时同、该门课程学生选修情息、澡程信息管理者:
可以管理学生以及教师信息,
122登陆模块
用干用户登陆,芫成星本的验证,根据Bi填18息进行列IS,imj分。
2•数据库披廿
2.1数据库概念
数据際是从60年代初发最起来的廿算机技术。
经过五十来年的发展,数据库技术已经赶干成題。
WEB数据库在新的INTERNET坏境中发生了很大的变化。
就数据应用而言呈现出多样化的空同,如数字图书馆、电子出版物、电子商务、远样教育系筑等的岀观,给WEB数据库技术提出了更多、更高的要求。
间时,师着国高枚校园网的建设,基干互联网的应用糸统的开发正在薩勃发展并发挥着较大的作用。
例如,我国弁乡高校的网上招生系统,学校的各种管理信息系锐,学校选课糸躱,还有一些医学院校开发出的网上诊所、远程诊斷系貌等等,郡是基TR0网的应用糸统。
国外的教学科研軟件与国柑比开发的早而目比较成熟。
早在七十年代末,美国就建应了NSFNER(国家科学基金网),其容体的申报及课题的进展情乱汇报部在网上»(To貝网上教学教务管理系统也十分完善,世界各地的学生可以坐在家里通过互妖网完应人学报名、选课、考试.毕业论文、取得学位这一学习生活的全过样。
目前,国际上已具规模的isf?
9育学校就有数百所之多,网上教育正在各地发挥着巨大的作用,为世界各国培养出大笔人才。
所有迪些都表明,基TINTERNET的校园网的应用与深人到校园的各f方面。
在高等学校的教务管理工作中,课f?
表的编排是一坝十分复杂、棘手的工作。
在AH果过相中,除了満足大量的制约条件1DH连必须解决弁多冲突于Jfi,例如:
两位教师不能同一时冋在B-ffl级上课、一位教师不能在同一时间上两门课等等。
利用廿算机埔助进行课表编松工作,既錠高了»«1作的科学ft,Jnj大大械轻菅連人员的工作强度,提供工作效率,从而便学校教务管理现代化ifi上了一个新台阶。
我国不少高校那实行了学分嗣,它的核心是允许学生自由选课,即把学习的自主权交给学生。
在越里,学生选课时的制约因素比较复杂,工作量也很大,而目住往需要在较短的时间完成。
运用廿算机埔助选课,既能实时地对大量选课数据进行检呀和锐i仁十分方便地输岀选课结果,间时也遐免了人工处理时容易产生的措误。
从系筑开发的复杂枳度来看,its机舗助排课与选课是高校教务系统屮的两个关址子系统,目前不少朝务系筑尚未很好地解决孙课与选课冋題。
本文壬要对高校教务管理系统中it算Ulitf?
表与选课子系统的基本功能、设廿思想、需求分桥以及实观技术进fiSilo
我想大家肯定那经历过学生时代,也弁很多人连对那f时候的选课记忆犹新,毎f学期那要排着长长的臥15去选。
观在我们已经进人到INERNET时代了,选课糸统自然也要随着更新。
大学中,公选课较多,学生可根据自己的专业及兴趣选择优选Sffiifi学习,本系説将从教学跚门的要求出发,实现公选课的选择、查询与统计。
2.2数据库使用的工具
SQLSERVER2005是一个全面的数据库平台,便用集成的商业智能(Bl)I具提供了企业级的Sffifi理。
SQLSERVER2005数据库引擎为关系里数据和结构化数据提供了更安全可靠的存储助能◊我们可以构建和管理用于业务的高可用柯高性能的数据应用程序oSQLSERVER2005数据弓I擎是企业敛据管理解决方案的核心。
此外SQLSERVER2005合了分桥、报表、集成和通舟I功能。
与MICROSOFTVISUALSTUDIO.MICROSOFTOFFICESYSTEM以及新的开发工具包(色tibusinessintelligencedevelopmentstudio)的紧密集成便SQLSERVER2005与介不同。
SQLSERVER2005enterpriseedition(32Eft64fi)enterpriseedition达到了支持超大塑企业进仃联tH事务处理(OLTP)、高度复杂的数据分桥、数据仓库系竦相所需的牧能
管理员连接;(8)快照丽;
在线检索樣
(7)专门的
水平。
SQLSERVER2005数据库管理9个1要特点:
(1)数据库負像;
(2)在找恢复;(3)作;(4)快速恢复;(5)安全性能的授高;(6)新的SQLSERVERMANAGEMENTSTUDIO;A-A■■
;(9)数摒分割。
2.3系统楡念模塑
图2-3-1
图2-3.2
图2-3-3
图2-3-4
上图是学生选课系统炭念模塑E/R图,该系统所涝及的实体集有:
学生实体集:
具有属性学号、、册级。
教师实体集:
具有属性教師号、、册级。
课程实休集:
具有属性教师.课程名、编号。
管卑员实体集:
具有号、密侶。
2・4数据库逆辑按廿
数据岸逻辑设廿就是将E-R图转旗为关系模型的过程,即為所有实体和关系转旗城一系列的关系模里。
转換过程中常见规剧有:
(1)—f实体里转换为一个关系模世:
(2)一个一对一的联系可以转换成一f«!
立的关系模貳,也可与任意一端对应的关系模氏台并;
(3)一个一对多的曲系可以转换成一个狼立的关系模衣,也可以与多个S-S对应的关系模式合并;
(4)一个》对多的关系转换械一个关系模氏。
(5)根据以上四条规则,下面SE-R图转换城关系模型。
一彳、学生可以选修多门课权,一个教师可以开设多门课样。
所以学生和教师之间是M:
N的联系。
一f管卑员可以管理多个学生信息。
所以管卑员和学生之同是1:
N的联系。
多f管卑员可以管理多个教师信息,所以管讯员与教师之间是M:
N的联系。
2.5数据库的物理实现
第过数据库系筑分折柯逆辑设it后,数据库的结枸已经非常淸晰,卅下的就是用一种数摒库软件实现迪样的给构:
2.5.1数据库表
Logon(登录密侶)
主要用来保存用户登录信息
字段名
数据类型
长度
是否为空
是否主维
UserID
char
10
不为空
ii8
Passwordr
charr
10
表2-5-1-1
StudentTablel(学生信息表)
主要用来保存学生信息。
字段名
数据类塑
长度
主鍵否
是否为空
描述
StudentID
Char
10
Ia
不为空
学生学号
StudentName
Char
10
不为空
学生
Class
char
16
所在册级
表2-5-1-2
TeacherTable1(教师信息表)
用来储存教师的基本信息
字段名
数据类塑
主鍵否
是否为空
描述
TeacherlD
Char
10
主建
不为空
教帅编号
TeacherName
Char
10
不为空
教帅
Department
char
20
所在册级
表2-5-1-3
CourseTable(课程信息表)
字段名
数据类塑
长度
是否为空
描述
CourselD
Char
16
tit
不为空
课程编号
CourseName
Char
16
不为空
课程S
TeacherName
char
10
不为空
教帅
表2-5-1-4
2.5.2数据库存储i!
程:
AllCourse:
createprocAllCourse
as
begin
selectx.CourselD,x.CourseName,x.Point,y.TeacherNamey.Post,乙Location,x.StuNumber
fromCoursex,TeacherTable1yJeachTablez
wherex.CourselD=z.CourselDandy.TeacherlD=z.TeacherlD
end
DeleteLogon:
createprocDeleteLogon(idchar(10))
as
deletefromLogon
whereUserlD=id
end
DeleteStudent:
createprocDeleteStudent(idchar(10))as
begin
deletefromStudentTablel
whereStudentlD=id
end
DeleteTeacher:
createprocDeleteTeacher(idchar(10))as
begin
deletefromTeacherTablel
whereTeacherlD=id
end
InsertLogon:
createproclnsertLogon(idchar(10))
as
insertintoLogon
values(idjd)
end
Insertstudent:
createproclnsertStudent(useridchar(10),usernamechar(10),sexchar
(2),birthdatetime,class
char(10))
as
begin
insertintoStudentTablelvalues(userid山semame,sex,birth,class)
end
return
InsertTeacher:
createproclnsertTeacher(useridchar(10),usernamechar(10),sexchar
(2),birthdatetime,post
char(10),departmentchar(10))as
begin
insertintoTeacherTablelvalues(userid,usemame,sex,birth,post,department)
end
return
IsExistsStu:
createproclsExistsStu(idchar(10))as
begin
select*fromStudentTablelwhereStudentlD=idend
IsExistsTea:
createproclsExistsTea(idchar(10))as
begin
select*fromTeachertablel
whereTeacherlD=id
end
ProcAIIStu:
createprocProcAIIStu
as
begin
select*fromStudentTablel
end
ProcAIITeacreateprocProcAIITea
as
begin
select*fromTeacherTablel
end
ProcLogon:
createprocProcLogon(useridchar(16),passwordchar(10))as
begin
select*
fromLogon
whereUserlD=useridandPassword=password
end
return
ProcModify:
createprocProcModify(idchar(10),passwordchar(16))
as
begin
updateLogon
setPassword=password
whereUserlD=id
end
ProcStudent:
createprocProcStudent(idchar(10))
as
begin
select*fromStudentTablel
whereStudentlD=id
end
SelectCourse:
createprocSelectCourse(idchar(10),courseidchar(16))as
begin
insertintoScoreTable
values(courseid,id,null)
end
SelectedCourse:
createprocSelectedCourse(idchar(10))
as
begin
select*fromScoreTable
whereid=StudentlDend
SelectedCourseNum:
createprocSelectedCourseNum(idchar(10))
as
begin
selectCOUNTf*)
fromScoretable
whereStudentlD=id
end
SelectedDetail:
createprocSelectedDetailfidchar(10))
as
begin
selectx.CourselD,x.CourseName,x.Point,y.TeacherName,y.Post,z.Location,s.Score
fromCoursexJeacherTablely,TeachTablez,ScoreTables
whereid=s.StudentlDandx.CourselD=z.CourselDand乙TeacherlD=y.TeacherlD
andx.CourselD=s.CourselD
end
3系统使用
用户通过表单提哄用户名和密网信息,系貌根据用户提哄的登录信息对用户进行身份查陶鉴别。
如果身价合法,则将用户导向系统的选课页面。
HA:
用户名、密码
(1)输入用户的登录信息:
在页面提供的表单岀输人用户的用户名和密昭信息,点击
“登录”按50提交表单信息到身价验证页面。
或点击“重置”按昂,重新输人。
(2)用户身价进连接数幽库,打开用户数据表login,检验用户登录信息。
以输人数据“用户名”为查询条件侨建数据集查看输人用户名是否存在。
如果存在,掘续检验输入的密网是否正确。
密码和用户名都正确,则进人选课页面;如果用户名不存在或密昭不正确,则给岀登录失败的提示柜。
输出:
学生选j果页面
bbb]
■
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.JOptionPane;
importjava.sql.*;
publicclassLoginextendsFrameimplementsActionListenerl
Framef,f1;
Buttonb1;
Buttonb2;
Buttonb3;
TextFieldt1;
TextFieldt2;
Label11;
LabelI2;
Connectioncon;
Statementsql;〃声明Statement对象
ResultSetrs;
publicLogin(){
f=newFramef"学生选课系貌");
Toolkittool=f.getToolkit();
Dimensiondim=tool.getScreenSize();
f.setBounds(0,0,dim.width,dim.height);
Panelp=newPanel();
f.add(p);
I1=newLabel(H用户名J;
:
(1¥1)JBqOoqo3ias7l
:
(9nJi)9|qiS!
Al9S-|
:
(sii|i)J8U9jsnuo!
jovppp-eq
:
(S!
m)J9U9isnuo!
PVPP^2Q
KsiinJjauaisnuoijovppP'|.q
:
(£q)ppbd
:
Gq)ppEd
:
Uq)ppEd
:
⑵)pped
:
Gl)PPEd
Xu)pped
XH)PPB'd
X..aB.)uonngM9u=eq
:
(“gSffiJuoungM9u=gq
IGHgJuoungM9u=|.q
:
(02)P|9!
JlX8iM9U=2t
!
(02)P|9!
dP(91M9U=U
f.addWindowListener(newWindowAdapterf)
publicvoidwindowClosing(WindowEvente)
{
System.exit(O);
}
}
);
}
publicvoidactionPerformed(ActionEvente){
if(e.getSource()==b1){
if(t1.getText().equals("")||t2.getText().equals(,,")){
JOptionPane.showMessageDialog(null,"输人不能为空!
");
}
else!
try{
Class.forName(Msun.jdbc.odbc.JdbcOdbcDriverw);
}catch(ClassNotFoundExceptiona){
System.out.println(,m+a);
}
try{
con=DriverManager.getConnection(,,jdbc:
odbc:
sun,,,,,V");sql=con.createStatement();
rs=sql.executeQuery("Select*FROMlogin");〃查询数据库
booleancheck=false;
while(rs.next()){
StringUserName=rs.getString
(1);〃获得数据库第二列
StringPassword=rs.getString
(2);〃获得数据库第三列
if(t1,getText().equals(UserName)&&
t2.getText().equals(Password)){〃判Uli培旬
check=true;
JOptionPane.showMessageDialog(null,"登陆成助!
");
f.dispose();
newWindowBoxf选课窗口");
t1.setText("");
t2.setText("M);
break;
}
}
iffcheck==false)!
JOptionPane.showMessageDialog(null,"登陆失败,请重新输人!
“);
}
con.closeO;
}catch(SQLExceptionel){}
if(e.getSource()==b2){
tl.setTextC"');
t2.setText("");
}
if(e.getSource()==b3){
f.disposef);
newRegistC1学生选课系貌注册界面");
publicvoidwindowClosing(WindowEvente){
System.exit(O);
}
publicstaticvoidmain(String[]args){
newLogin();
3.2学生选课系筑注册
T学生遥课系统注册界面
用尸宕I
mvk
SB
图3-2-1
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.JOptionPane;
importjava.sql.*;
classRegistextendsFrameimplementsActionListener{
LabelIb1,lb2,Ib3;
TextFieldtf1,tf2,tf3;
Buttonbt1,bt2,bt3;
Regist(Strings){
super(s);
setLayout(null);
setBounds(0,0,900,900);
setVisible(true);
setResizable(false);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 选课 系统 设计 实现
![提示](https://static.bdocx.com/images/bang_tan.gif)