1、1宿舍管理系统开发工具简介Delphi 7.0 的特点Delphi 是 Borland 公司出品的开发工具,在众多的开发工具中,我们为什么要选择 Delphi呢?因为 Delphi 具有众多其它开发工具所没有的优点!具体介绍如下: 开发的高效 语言的高效 编译的高效 执行的高效 维护的高效基于以上理由,我们毫不忧郁的选择了 Delphi 做为我们的开发工具!主要的控件及其属性简介 TForm 类的控件:1) BorderIcons 属性:用来控制程序标题按钮的可用性。2) BorderStyle 属性:用来控制程序边框的样式。3) Color 属性:用来控制程序界面的颜色。4) Font 属性
2、:用来控制程序界面的字体。5) Position 属性:用来控制程序运行时界面的显示位置。 TADOConnection 类的控件:1) ConnectionString 属性:用来控制链接字符串。2) LoginPrompt 属性:用来控制链接时是否要输入密码。3) Connected 属性:用来控制是否进行链接。 TADOQuery 类的控件:1) Connection 属性:用来指定和哪个 TADOConnection 控件相连。2) SQL 属性:用来添加向数据库提交的 SQL 语句。3) Add 方法:用来向 SQL 属性添加 SQL 语句。4) Open 方法:用来执行 SQL 语
3、言中的 Select 语句。5) ExecSQL 方法:用来执行任何 SQL 语句。6) FieldByName 属性:用来给数据库的字段赋值。7) FidldValues 属性:用来取出数据库的字段的。8) Append 方法:用来向数据库添加一条记录。9) Edit 方法:用来编辑当前的记录。10) Post:用来向数据库提交所做的修改。2 TADOTable 类的控件:1) Connection 属性:用来指定和哪个 TADOConnection 控件相连。2) Open 方法:用来打开数据库中指定的表。3) FieldByName 属性:用来给数据库的字段赋值。4) FidldValu
4、es 属性:用来取出数据库的字段的。5) Append 方法:用来向数据库添加一条记录。6) Edit 方法:用来编辑当前的记录。7) Post:用来向数据库提交所做的修改。 TDataSource 类的控件:1) DataSet:用来指定和哪个数据集相连。 TDBGrid 类的控件:1) DataSource:用来指定和哪个 TDataSource 控件相连。 TPageControl 类的控件:1) ActivePage 属性:用来指定当前活动的 Page 页。 TCheckTree 类的控件:1) ReadOnly 属性:用来控制 TCheckTree 内的 Item 是否可编辑。2)
5、Item 属性:用来控制 TCheckTree 包含的所有树形结点。3) Images 属性:用来指点 TCheckTree 中结点的图标。4) OnMouseUp 事件:用来添加鼠标放开事件所执行的程序代码。5) OnStateChange 事件:用来添加结点状态改变时的程序代码。 TFlatButton 类的控件:1) Caption 属性:用来指定 TFlatButton 的标题。OnClick 事件:用来添加按钮的单击事件所执行的程序代码。数据库连接方式选择Delphi 连接数据库的主要方式有两种:一是:BDE ,二是 ADO 。现在我们来大致比较一下这两种技术的优缺点:BDE(Bor
6、land Database Engine)是 Delphi 颇具特色的数据库连接管理技术。凭借窗体和报表,BDE 可以访问诸如 Paradox,dBASE,本地 InterBase 服务器的数据库,也可访问远程数据库服务器上的数据库,如 Oracle,SyBase,Informix 等 CS 数据库中的数据库,也可访问经 ODBC 可访问的数据库管理系统中的数据库。ADO(ActiveX Data Objects)是微软提供的一项技术。通过 ADO,可以方便的访问各种类型的数据库,特别是 OLEDB 数据库。ADO 已成为访问数据库的新的标准接口。从 Delphi 6.0开始 Delphi 添
7、加了对 ADO 的支持,以便让用户能迅速实现对终端用户用来做商业决策的数据库的一致性访问,结合 Delphi 本身的开发式数据组件结构,程序员可以很快地建立应用程序,用来把自己的商业数据库通过 Internet 发送给客户,最终用户以及整个销售环节。3通过 ADO,Delphi 7.0 也能让用户快速访问关系或非关系数据库以及 E-Mail 和商务文件系统。这两者提供了几乎相同的功能,在进行产品开发时,势必要做一个精心的比较。虽然 ADO技术提出的时间不长,并被定位为工业标准的,而且其在性能上由于当前没有良好的数据库引擎支持,其性能还不够完美,但是,我们应该要注意到 Borland 公司已经宣
8、布停止发展 BDE 了,其性能被 ADO 超越也是迟早的事,因此,在开发长期应用的产品时,推荐采用ADO 技术。这样还有另一个好处是,在进行产品分发时,可以避开大量 BDE 的链接库 DLL的分发。基于以上原因我们选择了 ADO 做为我们的数据库访问组件。程序运行环境操作系统:Windows 2000Windows XP办公软件:Office XPOffice 2003一、 课程设计的目的和意义在现代的高校宿舍管理工作中,由于高校扩招,学生人数巨增,传统的管理方法已经不适合高校宿舍管理的需要,以前在管理方面采用的管理系统有一些落后,随着学生人数的不断增加,该系统在数据管理方面有一些混乱,越来越
9、不能适宜管理的需要,因此需要一个功能更完善,操作更方便,容量更大的管理信息系统。因此宿舍管理系统是各大高校所需要使用的一个管理系统由于宿舍系统是一个比较大型的信息管理系统,它需要专业的工作人员才能完成复杂的功能,而且不同的高校的管理内容和方式有所不同信息系统分析与设计是学习完信息系统分析与设计课程后进行的一次全面的综合练习。其目的在于加深对信息系统基础理论和基本知识的理解,初步掌握使用信息系统分析、设计的基本内容和方法,提高解决实际问题的能力。作为学习,我们设计这个管理系统不可能作一个标准的应用系统,而只是制作了一个有一般代表意义的小型宿舍管理系统这样既深化了理论知识也提高了实践能力二、系统功
10、能设计用户登录界面系控制界面4数据备份数据还原密码管理数据操作数据查询高级查询帮助信息退出系统图 1-1 系统功能模块图登录密码管理 数据操作 数据查询 高级查询信息查询 信息操作 住宿分配学生信息查询 宿舍信息查询 住宿分配查询图 1-2 第二轮 H 图IPO 图系统名:宿舍管理系统 制图者: 颜乐辉模块名:数据操作 日期:8/5/2006由下列模块调用: 登录 调用下列模块: 信息查询信息操作住宿分配输入: 学生信息宿舍信息住宿分配信息5在本系统中,将实现以下功能: 学生住宿记录管理 删除记录管理 学生综合查询本系统将基本实现宿舍管理的大部分功能,具有很大的启发三、数据库设计1.1.1,
11、数据库需求分析数据库需求分析是数据库结构的第一个阶段,也是非常重要的一个阶段在这个阶段主要是收集其本的数据,数据结构及数据处理的流程,组成一份详尽的数字字典,为以后进一步设计打下基础在具体调查高校宿舍管理过程的基础上,得出主要解决的两个问题: 内容要求调查管理系统用户所需要操作的数据,决定用户在数据库中存储什么数据 处理要求调查管理系统用户要求对数据作什么样的处理,理清数据库中各种数据之间的关系解决这两个问题的时候,程序编制人员需要向应用系统用户详细调查,保证信息收集的完整性,否则有可能后面所有的工作都白费在数据库需求分析后应该得到一个数据字典文档,包括: 数据项包括名称,含义,类型,取值范围
12、,长度以及和其它数据项之间的逻辑关系 数据结构若干个数据项的有意义的集合,包括名称,含义以及组成数据结构的数据项 数据流指数据库中数据的处理过程,包括输入和输出针对本系统通过宿舍管理内容和过程进行分析,所设计的数据项和数据结构如下:输出:学生信息查询宿舍信息查询住宿分配查询处理内容:如有学生入住或搬出,则调用学生库信息操作;如有新增宿舍,则调用宿舍库信息操作;如有新生入住,则调用住宿分配.否则无效数据处理内部数据元素: 备注:6 学生基本信息包括的数据项有:姓名,学号,性别,年龄,年级,专业,籍贯,班级,院系 宿舍情况包括:宿舍号,宿舍楼号 住宿分配情况包括:宿舍楼号,宿舍号,学号 学校院系,
13、专业,年级和班级结构表.包括:院系,年级,专业和班级. 用户表.包括:用户名,密码和自动编号.1.1.2 数据库概念结构设计在创建系统之前,我们首先创建一个宿舍管理数据库在该数据库中,创建一个管理员表,学生库信息表,宿舍库信息表,住宿分配表用户编号用户名 admin 密码 pss图 管理员实体图7宿舍 ss宿舍楼号 sslh 宿舍号 ssh图 宿舍实体图住宿分配 zs宿舍楼号 sslh 宿舍号 ssh 学号 xh图 宿舍实体图8结构 院系专业年级班级图 学生实体图管理员 分配 宿舍属于学生服从 住宿分配管理结构属于图 实体之间关系图1.1.3 数据逻辑结构设计本系统采用的后台数据库是 Acce
14、s 数据库系统,因此必需把上面的数据项和数据结构9转换为 Access 数据库系统所支持的实际数据模型,也就是数据库的逻辑结构宿舍管理系统数据库中各个表的设计结果如以下表所示每个表代珍在数据库中的一个表表是数据库的基本信息结构,在设计表时按以下原则对信息分类(1) 表中不应该包含重复信息,而且信息不应该在表之间复制。如对学生的年龄、性别、所在系班级只保存一次,以后只需在一处更改。(2) 每个表应该只包含关于一个主题的信息,这样可以独立于其他主题来维护每个主题的信息。学生信息表(xs)用来保存学生的信息,表中各个字段的确良名称以及对各个字段的说明如表所示字段名称 数据类型 说明xm char 姓
15、名xh numeric 学号jg char 籍贯nj int 年级bj int 班级yx char 院系zy char 专业xb char 性别表学生(xs)信息表宿舍情况表(ss)用来保存宿舍信息,表中各个字段的名称以及对各个字段的说明如表字段名称 数据类型 说明sslh numeric 宿舍楼号ssh numeric 宿舍号表 宿舍(ss)信息表宿舍分配表(zs)用来保存住宿分配信息,表中各个字段的名称以及对各个字段的说明如表字段名称 数据类型 说明sslh numeric 宿舍楼号ssh numeric 宿舍号xh numeric 学号表住宿(zs)分配表用户信息表(user)用来保存用
16、户信息,表中各个字段的名称以及对各个字段的说明如表字段名称 数据类型 说明username varchar 用户名pass varchar 密码表用户信息表(user) 10四、数据库结构的实现在需求分析和概念设计的基础上得到数据库的逻辑结构之后就可以在 delphi 数据库系统中实现该逻辑结构 代码设计(1)学生学号代码设计 为了让学生便于管理,学校需要给每位学生一个学号。同时,学生的学号必须不仅仅是代号,还必须能反映一定的信息。因此,学生学号代码采用层次码,并用八位整数表示,设计方案如图 1 所示,部分学号编码列于表 1 中。学生顺序号系别入学年份图 1 学号代码设计方案表 1 学号代码表
17、学生代码 含义0307020126 2003 入学的信息系 26 号学生0307010126 2003 入学的数学系 26 号学生注:由于学生众多,表 1 中只列举了各系 2003 年入学的 26 号学生,其他学生依次类推。(2)班级代码设计 班级顺序号系别入学年份图 2 班级代码设计方案11表 2 学号代码表学生代码 含义0307020126 2003 入学的信息系 1 班0307010126 2003 入学的数学系 1 班 注:由于班级众多,表 2 中只列举了各系 2003 年入学的一些班级,其他班级依次类推。(3)寝室号代码设计 寝室代码用四位整数表示,设计方案如图 2 所示。表 2 列
18、出了部分寝室的代码。寝室顺序号楼层顺序号楼号顺序号图 3 寝室代码设计方案表 3 寝室代码表寝室代码 含义21504 21 号楼第 5 层第 04 室19504 19 号楼第 5 层第 04 室03504 3 号楼第 5 层第 04 室9101 九号楼第一层第一个寝室注:由于寝室众多,表 3 中只列举了部分楼第一层第一个寝室,其他寝室依次类推。五、建立主窗体123.1.1 创建主窗体打开 Borland Delphi7.0,建立一个 Form 窗体.主窗体以简洁,易操作的界面设计.以主菜单和子菜单的形式出现.此窗体的各个属性如表 3-1 所示窗体属性 取值Name Form2Caption 宿
19、舍管理系统StartUposition 2-CenterSreenWindowState 2-Maximized3.1.2 添加菜单使用菜单编辑器编辑系统主菜单,从属关系以及主要属性如表 3-2 所示Caption Name文件(主菜单) 文件数据备份 数据备份数据还原 数据还原密码管理 pass退出 Close数据操作(主菜单) sjcz学生库信息操作 xskxxcx宿舍库信息操作 sskxxc住宿分配 zsfp数据查询(主菜单) sjcx学生库信息查询 xskxxc宿舍库信息查询 sskxxcx住宿分配查询 zscx高级查询 gjcx关于(主菜单) 关于帮助 help联系作者 report
20、对一些常用的菜单可以根据自己的需要设置快捷键来快速打开菜单,作者可以菜单编辑器中设置此功能,在这里就不作详细说明13六、设置系统登录功能用户可以通过登录模块登录系统主界面进行系统功能操作.4.1.1 添加控件用户登录窗体如图所示其各控件的重要属性设置如表所示控件 属性 属性值Name cmdLogin Command Caption 登录Name cmdCancel Command Caption 取消Edit.Text Name UserName Pass Edit.Text PasswordChar *4.1.2 添加代码如下代码实现登录功能,用户只须单击”登录”按钮即可登录宿舍管理系统,
21、添加单击此按钮的代码首先要检测是否输入的用户名和密码有效.登录系统之后登录界面隐藏:procedure TForm1.Button1Click(Sender: TObject);beginif edit1.Text= thenbeginshowmessage(密码错误)endelse if edit1.Text=pass thenbeginform2.Show;form1.Visible:=false;/form1.hideedit1.Clear;endelseshowmessage(密码错误);edit1.Clear;end;14“取消”按钮代码如下:procedure TForm1.But
22、ton2Click(Sender: TObject);beginapplication.Terminate;end;七、实现密码管理功能5.1.1 建立密码管理模块1,功能描述密码管理模块的功能包括添加用户,删除用户和密码修改等功能.2, 模块设计控件 属性 属性值Caption 确定/重置 Command1 /Command2 Name GroupBox2Caption 确定/重置 Command3/Command4 Name GroupBox1Caption 确定/重置Command5/Command6 Name GroupBox3Text1 Name Edit1Text2 Name Ed
23、it2Text3 Name Edit3Text4 Name Edit4Text5 Name Edit5Text6 Name ComboBox1Text7 Name ComboBox2Caption 关闭窗口Command7 Name Form3本设计来自:我要毕业设计网 http:/在毕业设计网注册后联系客服均可获赠您要求的毕业设计资料客服 QQ:8191040 说明:本软件/论文系有偿阅读、使用,完整 CAD 图纸或源代码请联系客服购买*全国最全毕业设计,详细目录请加 QQ8191040 索取模具毕业设计(注塑模,冲压模), 计算机毕业设计(ASP, ASP.NET, C#, Delphi, JAVA, JSP, PB, VC,VB,VFP 等)机械毕业设计,电子信息类毕业设计,土木路 桥毕业设计等等7 万余篇本科硕士论文, 工商管理毕业论文 汉语言文学毕业论文 国际贸易学毕业论文 经济管理毕业论文 会计学论文 教育类毕业论文等