宿舍卫生检查管理信息系统课程设计报告内容摘要:

生检查管理 打印宿舍信息 奖罚管理 打印工作人员信息 打印检查信息 报表打印管理 第 四 章 数据库设计 数据库概要说明 用户的需求具体体现在各种信息的提供保存、更新 、 查询 、 维护和打印 , 这就要求数据库结构能充分满足各种信息的输入和输出。 实现有组织地、动态地存储大量关联数据,方便用户访问系统中的数据。 本系统采用的是 SQL server 2020数据库,系统数据库命名为“ stucheckbase”,数据库用来存储宿舍信息、宿舍检查信息、用户信息以及奖罚信息等,在该数据库中包含 4张表,下面给出数据表的概要说明和主要数据表的结构定义。 为了使读者更好地了 解系统后台数据库中的数据表, 本人 设计了一个对照表。 数据表的对照表如表所示 表 41 数据表的对照表 表名 说明 user_if 用户信息表,用来保存用户和密码 hygiene_staff 宿舍信息表,存储宿舍信息以及成员相关信息 reward_punish 奖罚信息表,存储宿舍奖罚相关信息 hygiene_check 宿舍检查信息表,保存宿舍检查结果信息 数据库概念设计 (ER 图 ) 在本系统中我采用 “ 实体联系模型 ” ( ER 模型)来描述数据库的结构与语义,以对现实世界进行第一次抽象。 ER 模型直 接从现实世界抽象出实体类型及实体间联系,然后用 ER 图来表示数据模型。 它有两个明显的优点:接近于人的思维,容易理解;与计算机无关,用户容易接受。 但 ER 模型只能说明实体间语义的联系,不能进一步说明详细的数据结构,它只是数据库设计的第一步。 根据以上对系统所作的需求分析,系统设计,规划出本系统中使用的数据实体。 那么本系统的 ER 图如下: (1)用户信息表( user_if) 本系统中该实体包括 user_ID、 user_PWD、 user_Des 属性,实体的 ER 图如图 42 所示 图 42 用户信息实体的 ER图 (2)宿舍信息表( hygiene_staff) 该实体包括编号、栋号、寝舍号、姓名、学院、年龄、性别、职位、电话、备注属性,实体的 ER 图如图 43所示 用户信息 user_ID user_PWD user_Des 图 43 宿舍信息 实体的 ER图 (3)奖罚信息表( reward_punish) 该实体包括栋号、寝舍号、年级、学院、专业、寝舍成员、奖励情况、违纪情况、电话属性,实体的 ER图如 图 44所示 图 44 奖罚信息 实体的 ER图 (4)宿舍检查信息表( hygiene_check) 该实体包括日期、栋号、寝舍号、评分 评分 评分 总分、平均分属性,实体的 ER 图如图 45所示 图 45 宿舍检查信息 实体的 ER图 宿舍信息 编号 栋号 年龄 学院 姓名 寝舍号 职位 性别 电话 备注 奖罚信息 年级 栋号 寝舍号 学院 专业 电话 寝舍成员 奖励情况 违纪情况 宿舍检查信息 栋号 日期 寝舍号 评分 2 评分 1 评分 3 总分 平均分 数据库逻辑设计 根据设计好的 ER 图在数据库中创建数据表,系统数据库名称为stucheckbase,针对本系统的特点,在对所搜集的数据进行规范化之后,定义了如下 四 张表格,分别是 用户 信息表, 宿舍 信息表, 奖罚信息表, 宿舍检查信息 表。 通过对这 四 张表格的操作可以较好地完成系统设计的各项功能, 四 张表格之间有着不同程度的联系。 系统数据库中各表的结构如下。 (1)userif(用户信息表) 用户信息表用来保存用户和密码,包括“ user_ID”、“ user_PWD”和“ user_Des”字段,其结构表如 表 46所示 表 46 userif的 表 结构 表名:user_if 说明:用户信息表 字段名 类型 大小 主键 空值 默认 描述 user_ID char 10 Y user_PWD char 10 Y user_Des char 10 Y (2)hygiene_staff(宿舍信息表) 宿舍信息表用于存储宿舍信息以及成员相关信息,其中“编号”,为主键,包括“栋号”、“ 寝室号 ”、“ 姓名 ”、“ 学院 ”、“ 年龄 ”、“ 性别 ”、“ 职位 ”、“ 电话 ”和“ 备注 ” 字段,其结构表如 表 47所示 表 47 hygiene_staff的表结构 表名: hygiene_staff 说明:宿舍信息表 字段名 类型 大小 主键 空值 默认 描述 编号 char 10 Y 栋号 char 4 Y ‘ 无 ’ 寝室号 char 10 Y ‘ 无 ’ 姓名 char 10 Y ‘ 无 ’ 学院 char 30 Y ‘ 无 ’ 年龄 int 4 Y ‘ 无 ’ 性别 char 8 Y ‘ 无 ’ 职位 char 20 Y ‘ 无 ’ 电话 char 12 Y ‘ 无 ’ 备注 varchar 50 Y ‘ 无 ’ (3)reward_punish(奖罚信息表) 奖罚信息表 用来存储宿舍奖罚相关信息,其中“栋号”和“寝室号”为主键,包括“年级”、“学院”、“专业”、“寝室成员”、“奖励情况”、“违纪情况”和“电话” 字段,其结构表如 表 48所示 表 48 reward_punish的表结构 表名: reward_punish 说明:奖罚信息表 字段名 类型 大小 主键 空值 默认 描述 栋号 char 4 Y 寝室号 char 10 Y 年级 char 10 Y ‘ 无 ’ 学院 char 30 Y ‘ 无 ’ 专业 char 20 Y ‘ 无 ’ 寝室成员 text 16 Y ‘ 无 ’ 奖励情况 char 200 Y ‘ 无 ’ 违纪情况 char 200 Y ‘ 无 ’ 电话 char 12 Y ‘ 无 ’ (4)hygiene_check(宿舍检查信息表) 宿舍检查信息表 用于保存宿舍检查结果信息,其中“ 日期 ”、“ 栋号 ”和“ 寝室号 ”为主键,包括“ 评分 1”、“ 评分 2”、“ 评分 3”、“ 总分 ”和“ 平均分 ” 字段,其结构表如 49所示。 表 49 hygiene_check的表结构 表名: hygiene_check 说明:宿舍检查信息表 字段名 类型 大小 主键 空值 默认 描述 日期 datetime 8 Y 栋号 char 4 Y 寝室号 char 10 Y ‘ 0’ 评分 1 real 4 Y ‘ 0’ 评分 2 real 4 Y ‘ 0’ 评分 3 real 4 Y ‘ 0’ 总分 real 4 Y ‘ 0’ 平均分 decimal 5 Y 第 五 章 系统详细设计 (1)附加数据库 打开 SQL Server 的企业管理器,然后在左侧的“数据库”图标上右击,单击弹出菜单上的 [所有任务 ]|[附加数据库 ]命令,在弹出的对话框中,单击 [浏览 ] , 选 择 路 径 F:\ 宿 舍 卫 生 检 查 管 理 信 息 系 统\database\ 文件,最后单击 [确定 ],附加数据库成功。 数据库配置 如图 51所示 图 51 数据库配置 (2)通过 SQL 脚本生成数据库 用 查 询 分 析 器 打 开 F:\ 宿 舍 卫 生 检 查 管 理 信 息 系 统\database\ 文件,单击执行就会生成相应的表。 这样可以生成一个数据清空的数据库,用户可以设置自己的基础数据。 (3)Visual Basic 与数据库的连接字符串 本人设计了连接字符串的 ConnectSting 函数,代码如下: 39。 获得计算机名称的 API函数 Public Declare Function GetComputerName Lib kernel32 Alias GetComputerNameA (ByVal lpBuffer As String, nSize As Long) As Long Public Function ConnectString()As String Dim ComputerName As String, i As Long i = 255 39。 获得计算机名称的调用 API函数 ComputerName = String(i, 0) GetComputerName ComputerName, i ComputerName = Left(ComputerName, i) strputername = ComputerName ConnectString = Provider=。 amp。 _ Persist Security Info=False。 amp。 _ UID=sa。 PWD=314。 amp。 _ Initial Catalog=stucheckbase。 amp。 _ Data Source= + strputername + End Function 公共模块的实现 在整套系统中,可以用公用模块来存放公用的函数,过程和全局变量等,这样可以提高代码的效率,而不需要在每个模块中都定义这些函数,过程或全局变量,用户使用时也比较方便,在项目管理器中为项目添加一个 Module 即可,然后添加需要的代码。 由于系统的各个功能模块都将频繁的使用数据库的各种数据,因此需要一个公共的数据操作函数,用于执行各种 SQL 语句,在本系统中添加了函数 ExecuteSQL,在 ExecuteSQL 函数中使用了 ConnectString 函数,这个函数用来连接数据库。 这里需要特别注意的是,在为 数据库创建文件 DSN 时,名称应该和 ConnectString 中的参数一致。 需要注意的是, ConnectString 中的用户和密码参数必须和安装的 SQL Server 的参数一致。 模块主要有两个函数。 函数“ ConnectString”是连接字符串,它的功能是建立 Visual Basic 与 Microsoft SQL Server 2020 的连接;函数“ ExecuteSQL”执行相应的 SQL语句,完成查询、修改、删除、插入等对数据库的操作。 其中函数“ ExecuteSQL”的代码如下: Public Function ExecuteSQL(ByVal SQL As String,MsgString As String)_ As Dim n As Dim rst As Dim sTokens() As String On Error GoTo ExecuteSQL_Error sTokens = Split(SQL) Set n = New ConnectString If InStr(INSERT,DELETE,UPDATE,UCase$(sTokens(0))) Then SQL MsgString = sTokens(0) amp。 query successful Else Set rst = New Trim$(SQL), n,adOpenKeyset,adLockOptimistic 39。 39。 get RecordCount Set ExecuteSQL = rst MsgString = 查询到 amp。 amp。 条记录 End If ExecuteSQL_Exit: Set rst = Nothing Set n = Nothing Exit Function ExecuteSQL_Error: MsgString = 查询错误 : amp。 Resume ExecuteSQL_Exit End Function 登录与主程序界面的设计 (1)登录模块 启动程序以后,首先进入登录界面, 系统登录主要用于对登录宿舍卫生检查管理信息系统的用户进行安全性检查,以防止非法用户登录该系统。 登录界面(frmlegoin,frm)如图 52所示。 登录界面主要实现以下功能。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。