



版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学生宿舍管理系统的设计(sql数据库课程设计)数据库课程设计报告学生宿舍管理系统设计专业学生姓名班级学号指导教师完成日期11目 录1 课程设计目的及要求12 课程设计的主要内容13数据库设计2 概念设计2 逻辑设计3 物理设计54程序模块设计6 登录界面模块设计6 按宿舍号、学生学号的查询模块设计8 按宿舍号、学生学号的统计模块设计105 小结12附 录13附录1 源程序清单131学生宿舍管理系统的设计1 课程设计目的及要求 设计目的:1) 简化宿舍管理人员手工记录数据的繁琐;2) 提高记录查询速度,缩短查询时间;3) 实现数据的安全存储。设计要求:1)要求用户必须输入正确的密码才能进入系统;
2、2)实现按宿舍号、学生学号的查询。3)实现分别按宿舍号、学生学号的统计。 2 课程设计的主要内容 经济可行性分析系统的经济可行性分析是指对组织的经济状况和投资能力进行分析,对系统的建设运营和维护费用进行估算,对系统建成后可能取得的社会及经济效益进行估计。由于本系统作为毕业设计,所以在资金上没有太多的需求,只是需要系统开发者投入较多的时间,去进行研究和分析,以及思考问题的所在。 技术可行性分析学生公寓管理系统使用sql sever 2017以及进行开发,由于的可视化模块比较强大,所以在系统的设计过程中不会有太大问题,同该系统使用macro software的sql server 2017对后台的
3、数据进行操作,使得数据完整性得以保证,同时数据操作简单化。通过上述分析得出该系统在技术上是可行的。 操作可行性分析本系统直观易懂,使用非常方便,管理员经过简单的培训就可以熟练的使用,因此系统的操作没有什么太大困难。3数据库设计 概念设计学生学号性别姓名年龄所属学院入住寝室号居住性别寝室人数寝室n楼号房间数包含1管理宿舍楼n1管理员性别姓名员工号楼号n1楼号寝室号楼号 数据字典是各类数据描述的集合,它是进行详细的数据收集和数据分析后所 收获得的主要成果。数据字典通常包括以下5个部分:a 数据项:数据项是不可再分的数据单位。b 数据结构:数据结构反映了数据之间的组合关系。一个数据结构可以由若干个数
4、据项组成,也可以由若干个数据结构组成,或由若干数据项和数据结构混合组成。c 数据流:数据流是数据结构在系统内传输的路径。d 数据存储:数据存储是数据及其结构停留或保存的地方,也是数据流的来源和去向之一。e 处理过程:处理过程的具体处理逻辑一般用判定表或判定树来描述。数据字典是关于数据库中数据的描述,即对元数据的描述。数据字典是在需求分析阶段建立,在数据库设计过程中不断修改、充实、完善的。a. 数据项编号:e01数据项:管理员信息表描述:宿舍管理员的相关信息定义:管理员信息表=员工姓名+性别+员工号+管理的楼号b. 数据项编号:e02数据项:宿舍楼信息表描述:宿舍楼的相关信息定义:宿舍楼信息表=
5、宿舍楼号+宿舍数目c. 数据项编号:e03数据项:寝室信息表描述:学生寝室的相关信息定义:寝室信息表=寝室号+居住性别+寝室人数+楼号d. 数据项编号:e04数据项:学生信息表描述:学生的个人信息定义:学生信息表=学号+性别+姓名+年龄+所属学院+居住楼号+寝室号 逻辑设计分析后达到三范式后建立以下4个表:manager_info 表 管理员信息floor_info 表 宿舍楼信息room_info 表 寝室信息student_info 表 学生信息一、管理员信息表(manager_info) 管理员信息表字段名数据类型长度说明描述mnamechar10不空,主键管理员姓名msexchar10
6、不空性别mnumberint4不空编号mlouint4不空楼号二、宿舍楼信息表(floor_info) 宿舍楼信息字段名数据类型长度说明描述mlouint4不空楼号roomint4不空房间数三、寝室信息表(room_info)寝室信息字段名数据类型长度说明描述qnumberint4不空,主键寝室号qsexchar10不空居住性别qcountint4不空寝室人数mlouint4不空楼号四、学生信息表(student_info) 学生信息字段名数据类型长度说明描述snumberint4不空,主键学号snamechar10不空姓名ssexchar10不空性别sageint4不空年龄scollegec
7、har10不空所属学院mlouint4不空楼号qnumberint4不空寝室号 物理设计 数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段中要完成两大任务:(1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;(2)对物理结构进行评价,评价的重点是时间和空间效率。1、create database data_baseon(name=data_base_data,filename=c:programefilesmicrosoftsqlservermssqldata,size=10mb,maxsize=50mb,filegrowth=5mb) lo
8、g on(name=data_base_log,filename=c:program filesmicrosoft sql servermssqldata,size=10mb,maxsize=20mb,filegrowth=5mb)2、create table manager_info( mname char(10) not null primary key, msex char(10) not null, mnumber int(4) not null, mlou int(4) not null)go3、create table floot_info ( mlou int(4) not nu
9、ll primary key,room int(4) not null)go4、create table room_info( qnumber int (4) not null primary key,qsex int (10) not null,qcount int (4) not null,mlou int (4) not null)go5、create table student_info( snumber int (4) not null primary key,sname char(10) not null,ssex char(10) not null,sage int (4) no
10、t null,scollege char(10) not null,mlou int (4) not null,qnumber int (4) not null)4程序模块设计 登录界面模块设计 功能需求:实现密码正确时才可使用此系统。用户界面设计:程序代码设计和分析: 程序主界面由6个部分怎么组成,菜单栏5个按钮分别三“按学号查询”、“按宿舍号查询”、“按学院统计”、“按宿舍号统计”、“帮助”,分别对应各自的功能。初始状态下5个按钮都是无效的,只有输入正确的口令,功能才被激活。口令出错时会出现“您输入的密码不正确”这样的提示窗口。如果三次输入错误,用户会被禁用。运行结果:口令正确,窗口如下:
11、口令错误,窗口如下:口令三次错误,用户被禁用,窗口如下: 按宿舍号、学生学号的查询模块设计功能需求:实现分别按宿舍号、学生学号查询学生的相关信息。用户界面设计: 程序代码设计和分析: 由于按学号查询跟按宿舍号查询功能类似,所以以学号举例。查询之前首先需要建立与sql的连接。 连接成功以后,使用string sql="select * from student_info where snumber="+();进行查询,使用在命令行中输出。运行结果:按宿舍号查询结果如下:按学号查询结果如下: 按宿舍号、学生学号的统计模块设计功能需求:实现分别按宿舍号、学院进行统计。用户界面设计
12、: 程序代码设计和分析:在文本框中输入学院代号,1表示博雅学院,2表示化生学院,3表示机械学院,设置一个变量x表示相应学院的住宿生人数。然后使用java命令行输出表达式在dos界面进行设计。 运行结果: 按宿舍号统计住宿生,结果如下: 按学院统计住宿生,结果如下:5 小结这次数据库课程设计收获颇丰。由于很多知识书本上没有,所以使得我学要在网络上寻找相应的内容,提高了我的知识查询能力。在java程序与sql数据库连接上花了不少时间。首先安装了sql sever 2000 jdbc 驱动程序,接着有对电脑本来的sql sever 2000 打上sp3补丁,安装sp3驱动程序。另外,还得在java的
13、目录下粘贴,文件。最后在dos环境中使用“ netstat an”查看端口1433是否打开,打开后才可以进行数据库的连接。1433端口是java和sql数据库进行连接的主要端口,该端口打开后也就意味着计算机给网络中的不法分子提供了一个入侵漏洞,计算机受到不断入侵会把用户的进行拦截,以至于用户不能打开dos界面。 附 录附录1 源程序清单import .*;import .*;import .*;public class zu extends frame implements actionlistenerstatic int i=0; static int m=1;label a1,a2;tex
14、tfield text1;button button1,m1,m2,m3,m4,m5;font f;zu(string s)super(s);setlayout(null);f=new font("黑体",20);m1=new button("按学号查询");m2=new button("按宿舍号查询");m3=new button("按学院统计");m4=new button("按宿舍号统计");m5=new button("帮助");(this);(this);(this
15、);(this);(this);(10,30,120,25);(140,30,140,25); (290,30,120,25); (420,30,80,25);(510,30,80,25);add(m1);add(m2);add(m3);add(m4);add(m5);a1=new label("数据库课程设计",;a2=new label("输入口令:");(180,100,300,40);(f); (180,200,90,25); ;text1=new textfield(18);(280,200,200,25);button1=new button
16、("确认");(300,250,70,30);(this);add(a1);add(a2);add(text1);add(button1);setbackground;setbounds(100,100,600,400);setvisible(true);validate();addwindowlistener(new windowadapter() public void windowclosing(windowevent e) (0); );public void actionperformed(actionevent e) string s=new string(&q
17、uot;02");if()=button1) while(i=0&&m<=3&&(!().equals("") if().equals(s) (this,"口令正确,欢迎使用","成功登录对话框",; i=1; else m+; (this, "您输入的密码不正确","警告对话框",; (null); if(m>=3)(this,"您已被禁用","错误对话框",;if(i=1)if()=m1)show
18、s1=new show("按学号查询信息");(true);else if()=m2)form3 f1=new form3();("按宿舍号查询信息");(true);else if()=m3)form4 f2=new form4();("按学院统计");(true);else if()=m4)form5 f5=new form5(); ("按宿舍号统计");(true);else if()=m5)help h1=new help("帮助信息");(true); class javaconnec
19、tsqlserver public static connection getconnection() connection conn=null; try (""); catch (classnotfoundexception e) (); try string connurl="jdbc:microsoft:;databasename=data_base" conn=(connurl,"sa",""); return conn; catch (sqlexception e) (); return conn; cl
20、ass show extends frame implements actionlistenerlabel b1,b2;font f;textfield t1; button button1,button2;show(string s) super(s);setlayout(null);f=new font("黑体",20);b1=new label("按学号查询信息 ");b2=new label("请输入学号:");t1=new textfield(18);(280,200,200,25);(180,100,250,40);(f)
21、;(100,200,120,25);t1=new textfield(15);(250,200,200,25);button1=new button("确定");button2=new button("返回");(200,350,70,25);(360,350,70,25);setbounds(100,100,600,400);setbackground;add(b1);add(b2);add(button1);add(button2);add(t1);(this);(this);validate();addwindowlistener(new wind
22、owadapter() public void windowclosing(windowevent e) setvisible(false); ); public void actionperformed(actionevent e)if()=button1)(); connection conn=(); statement stm=null; try stm = (); string sql="select * from student_info where snumber="+(); resultset rs=(sql); while() "学号")
23、;" "); "姓名");" "); "性别");" "); "年龄");" "); "所属学院");" "); "寝室楼号");" "); "寝室号");" "); "snumber");" "); "sname"); "ssex");"sage&
24、quot;);" "); "scollege");"mlou");" "); "qnumber"); catch (sqlexception k) (); else if()=button2)setvisible(false); class form3 extends frame implements actionlistenerlabel b1,b2;font f;textfield t1;button button1,button2;form3()setlayout(null);f=new
25、font("黑体",20);b1=new label("按宿舍号查询信息 ");b2=new label("请输入宿舍号:");(180,100,250,40);(f);(100,200,120,25);t1=new textfield(15);(250,200,200,25);button1=new button("确定");button2=new button("返回");(200,350,70,25);(360,350,70,25);setbounds(100,100,600,400);s
26、etbackground;add(b1);add(b2);add(button1);add(button2);add(t1);(this);(this);validate();addwindowlistener(new windowadapter() public void windowclosing(windowevent e) setvisible(false); );public void actionperformed(actionevent e)if()=button1) (); connection conn=(); statement stm=null; try stm = ()
27、; string sql="select * from student_info where qnumber="+(); resultset rs=(sql); "学号");" "); "姓名");" "); "性别");" "); "年龄");" "); "所属学院");" "); "寝室楼号");" "); "寝室号&quo
28、t;);" "); while() "snumber");" "); "sname"); "ssex");"sage");" "); "scollege"); "mlou");" "); "qnumber"); catch (sqlexception k) (); else if()=button2)setvisible(false); class form4 extends
29、frame implements actionlistenerlabel b1,b2;font f;textfield t1;button button1,button2;form4()setlayout(null);f=new font("黑体",20);b1=new label("按学院统计 ");b2=new label("请输入学院代号:");(250,100,250,40);(f);(100,200,120,25);t1=new textfield(15);(250,200,200,25);button1=new butto
30、n("确定");button2=new button("返回");(200,350,70,25);(360,350,70,25);setbounds(100,100,600,400);setbackground;add(b1);add(b2);add(button1);add(button2);add(t1);(this);(this);validate();addwindowlistener(new windowadapter() public void windowclosing(windowevent e) setvisible(false); )
31、;public void actionperformed(actionevent e)if()=button1) int x=0;(); connection conn=(); statement stm=null; try stm = (); string sql="select * from student_info where scollege="+(); resultset rs=(sql); "学号");" "); "姓名");" "); "性别");"
32、"); "年龄");" "); "所属学院");" "); "寝室楼号");" "); "寝室号");" "); while() x+; "snumber");" "); "sname"); "ssex"); "sage");" "); if()="1") "博雅");
33、 " "); else if()="2") "化生"); " "); else "机械");" ");"mlou");" "); "qnumber"); "该学院有住宿生"+x+"名"); catch (sqlexception k) (); else if()=button2)setvisible(false); class form5 extends frame imple
34、ments actionlistenerlabel b1,b2;font f;textfield t1;button button1,button2;form5()setlayout(null);f=new font("黑体",20);b1=new label("按宿舍号统计 ");b2=new label("请输入宿舍号:");(180,100,250,40);(f);(100,200,120,25);t1=new textfield(15);(250,200,200,25);button1=new button("确定&
35、quot;);button2=new button("返回");(200,350,70,25); (360,350,70,25);setbounds(100,100,600,400);setbackground;add(b1);add(b2);add(t1);add(button1);add(button2);(this);(this);validate();addwindowlistener(new windowadapter() public void windowclosing(windowevent e) setvisible(false); );public void actionperformed(actionevent e)if()=button1) int y=0;(); connection conn=(); statement stm=null; try stm = (); string sql="s
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 房屋防火安全协议
- 城市老年人参与社区治理现状及其影响因素研究-以深圳市为例
- 社区公共空间适儿化设计研究-以兰州市理工大社区工大嘉园为例
- 2025-2030中国固体饮料行业市场发展现状及竞争策略与投资前景研究报告
- 2025-2030中国品牌女装行业发展分析及投资风险预测研究报告
- 2025-2030中国冻干鲍鱼市场消费趋势调查及经营前景格局分析研究报告
- 2025-2030中国农业软件行业市场发展趋势与前景展望战略研究报告
- 2025年齿爪式粉碎机项目市场调查研究报告
- 2025年马头式小便下水器项目市场调查研究报告
- 某年度农产品流通战略市场规划报告
- 10SMS202-2 埋地矩形雨水管道及其附属构筑物(砖、石砌体)
- 河道景观设计合同范本
- 翻译员工作合同
- NB-T31052-2014风力发电场高处作业安全规程
- 2024年湖南高考历史真题
- 海外仓合同范本
- 体育行业投标书
- 慢性淋巴增殖性疾病的诊断课件
- 2024年高校教师资格证资格考试题库含答案(满分必刷)
- 2024-2029全球及中国电气电子中的CFD行业市场发展分析及前景趋势与投资发展研究报告
- 中国法律史-第三次平时作业-国开-参考资料
评论
0/150
提交评论