版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
JavaWeb开发技术7.2逻辑设计1
本讲聚焦学生信息管理系统的逻辑设计,阐述角色表、用户表、学生表、班级表、课程表、成绩表的字段定义、数据类型及关联关系,构建E-R图与类图,确保各表通过主键、外键关联,保障数据完整性与一致性,为系统开发提供结构基础。主要内容7.2逻辑设计数据表的逻辑设计1.角色表(roles)roleId:数据类型为int,在物理存储上通常占用4个字节。由于设置了auto_increment属性,数据库会自动为新插入的记录分配一个唯一的、递增的整数值。作为主键,数据库会为其创建一个聚簇索引(对于InnoDB存储引擎),聚簇索引将数据行按照主键值的顺序进行物理存储,通过主键查询数据时效率较高,且其叶子节点包含了完整的数据行。roleName:数据类型为varchar(16),属于可变长度的字符串类型。实际存储时,除了存储字符串内容外,还需额外的1或2个字节来记录字符串的长度(取决于字符串长度是否超过255个字符),所以roleName字段最多占用18个字节的存储空间。roleDescription:数据类型为varchar(256),同样是可变长度的字符串类型。存储时需要额外的2个字节来记录字符串的长度,最多占用258个字节的存储空间。2.用户表(users)userId:数据类型为int,通常占用4个字节。因设置了auto_increment属性,数据库会自动为新插入的记录分配唯一递增的整数值。作为主键,会创建聚簇索引(InnoDB存储引擎),提高通过userId查询用户记录的效率。userName:数据类型为varchar(16),是可变长度字符串类型。实际存储除字符串内容外,需1或2个字节记录长度,最多占用18个字节。userPassword:数据类型为varchar(16),可变长度字符串类型。最多占用18个字节。roleId:数据类型为int,占用4个字节。作为外键,会创建一个普通索引,加快基于roleId的查询速度。7.2逻辑设计3.学生表(students)主键:stu_id,作为学生的唯一标识符,确保每个学生记录的唯一性,方便数据的精准定位与关联操作。字段含义及关联:stu_name:记录学生的真实姓名,与学生的身份识别紧密相关,在学生信息展示、查询等功能中是关键信息。stu_gender:明确学生性别,可用于一些统计分析,如按性别分析成绩分布等,也有助于了解学生群体构成。stu_nation:反映学生的民族信息,对于多民族融合的学校环境,在某些政策实施、文化调研场景下有重要意义。stu_birth:用于准确知晓学生的出生日期,方便计算年龄、统计不同年龄段学生情况,与入学日期结合还能分析学生的入学年龄合理性等。stu_entrancedate:标记学生入学的具体时间,对学籍管理、班级年级划分等流程起到关键支撑作用。cls_id:作为外键关联班级表(classes)的cls_id字段,建立学生与所属班级的逻辑联系,通过这种关联,可以方便地查询某个班级的所有学生,或者某个学生所属的班级详情。stu_address:存储学生的家庭住址,在联系家长、了解学生生源地分布等方面有实际用途。stu_phone:记录学生或家长的联系电话,保障学校与家庭之间的沟通顺畅,用于通知信息、紧急联络等场景。stu_resume:容纳学生的个人简历信息,如学习经历、获奖情况等,有助于教师全面了解学生背景,在评优评先、个性化教学辅导时提供参考。4.班级表(classes)主键:cls_id,唯一标识每个班级,是班级信息管理、学生与班级关联的核心依据。字段含义:cls_name:直观呈现班级的名称,方便学校工作人员、教师、学生快速识别班级,如“高三(1)班”“计算机2021级1班”等,在班级活动组织、教学资源调配时是重要信息。数据表的逻辑设计7.2逻辑设计5.课程表(courses)主键:crs_id,确保每门课程在系统中有独一无二的标识,便于课程管理与成绩关联。字段含义及关联:crs_name:明确课程的具体名称,如“高等数学”“Java程序设计”等,是师生识别课程、安排学习计划的关键要素。crs_hours:记录课程的计划学时数,为教学安排提供时间规划依据,学校可依据学时合理分配教室资源、安排教师授课进度。crs_semster:表明课程开设的学期,助力学生选课规划、学校教学任务统筹,确保课程按教学大纲有序开设。crs_credit:登记课程学分,学分与学生毕业要求、学业评价直接挂钩,是学生选课、学业进度管理的重要参考。crs_nature:描述课程性质,如必修、选修、公共课、专业课等,指导学生依据专业需求、个人兴趣进行课程选择,也便于学校分类管理课程资源。6.成绩表(scores)联合主键:由stu_id和crs_id共同组成,确保同一学生同一课程的成绩记录具有唯一性,避免重复录入或错误统计成绩。字段含义及关联:sc_grade:存储学生初次考试的课程成绩,是学生学业成果的直接体现,用于成绩查询、统计分析,如计算班级平均分、课程优秀率等,为教学质量评估提供核心数据。sc_rebuild:用于记录补考或重修后的成绩,与原始成绩sc_grade对比,可观察学生学习进步情况,在学分认定、学业预警等环节发挥作用,该字段与stu_id、crs_id关联,精准定位到特定学生的特定课程补考成绩。数据表的逻辑设计7.2逻辑设计7.简化形式(关系模式)roles(roleId,roleName,roleDescription)users(userId,userName,userPassword,role_id)students(stu_id,stu_name,stu_gender,stu_nation,stu_birth,stu_entrancedate,cls_id,stu_address,stu_phone,stu_resume)classes(cls_id,cls_name)courses(crs_id,crs_name,crs_hours,crs_semster,crs_credit,crs_nature)scores(stu_id,crs_id,sc_grade,sc_rebuild)数据表的逻辑设计通过这样的逻辑设计,各数据表之间紧密关联,既能满足学生信息管理系统的各项功能需求,又为后续的系统开发、数据维护、查询统计等操作提供了清晰、合理的结构基础,确保数据的完整性、一致性和高效利用。7.2逻辑设计
相关E-R图如图7-3所示对应的类图如图7-4所示。图7
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 品德考卷题目及其答案
- 2026年法考海上货物运输题库(含答案)
- 2025年天津市政府采购评审专家考试历年参考题库含答案详解
- 2025年全国计算机等级考试二级C笔试试题含答案
- 2026年执业中药师考试题库及答案(附解析)
- 2026年环评师技术方法真题及答案
- 新建发电机外壳铝合金压铸智能化生产线建设可行性研究报告
- 青瓦项目可行性研究报告
- 2026年飞利浦(中国)校招面试题及答案
- 2026年春秋航空校招面试题及答案
- 2026中国银联校园招聘145人笔试历年备考题库附带答案详解
- 2026年企业家健康管理方案设计与案例分析
- 急诊预检分诊专家共识课件
- 广联达对标行业分析报告
- 2026安徽省供销集团有限公司集团本部纪检工作人员招聘3人考试备考试题及答案解析
- 起搏器的特殊功能及心电图表现
- 2026年面向6G的智能协作无线接入网(CIS-RAN)白皮书-
- 建筑施工图设计审查要点、常见问题及规范解读课件
- 2026包头钢铁集团校招面试题及答案
- 信息技术应用创新教程 课件 项目4数据库
- GB/T 46490-2025生物技术分析方法细胞治疗产品的试验和表征的一般要求和考虑
评论
0/150
提交评论