1、 1 课 程 设 计 课程名称: 数 据 库 原 理 课题名称: 学生成绩查询 班 级: 学 号: 姓 名: 指导教师: 20014 年 1 月 5 日 2 一一.设计目的设计目的: 通过这次课程设计,熟练掌握软件开发过程中数据库的使用,理解以数据库为 中心的软件开发设计思想,熟练应用数据库的增、删、改、查询等操作。 二二.设计内容:设计内容: 学生信息管理系统。 按照课本 P59 的三个表 (Student, Course, SC) 建立数据库, , 用 SQL 语句完成对数据库实现对表的查询和增删改等操作。 三三.设计部分:设计部分: 1)需求任务:需求任务: 1,用户将丛数据库中获得学生
2、信息,包括学生基本信息,课程信息,选课信息, 从而需要建立以上各个信息的模块来实现数据交互。 2,用户要完成查询,添加,修改,删除,浏览等处理功能。 3,安全性,协调性和完整性。当用户添加学号时,要保证学号不能重复,在选课 信息中学号和课程号的组合也不能重复,学生基本信息,课程信息和选课信息 中学号,课程号必须一致这样才能实现查询功能和各个信息模块的协调。选课 表中学号和课程号必须使用已经存在的号码,所以对数据进行添加,修改,删 除,浏览进行监控,进行出错提示及处理。 4,对功能的规定: 操作名称 相关数据 学生基本信息 学号,姓名,性别,年龄,所在系 课程信息 课程号,课程名, 选课信息 学
3、号,课程号,成绩 5,数据流图: 数据字典: (1)学生基本信息Student 学生 选 课 系 统 产生 学生 课程 记录 D1 学生基本信息 D2 课程记录 学生数据 课程信息 成绩 3 字段名称 数据类型 字段大小 作 用 必填字段 是否主键 Sno char 10 学号 是 是 Sname char 20 姓名 是 否 Ssex char 10 性别 是 否 Sage char 10 年龄 是 否 Sdept char 20 所在系 是 否 (2)课程信息Course 字段名称 数据类型 字段大小 作 用 必填字段 是否主键 Cno char 10 课程号 是 是 Cname char
4、 20 课程名 是 否 Ccredit char 10 学分 是 否 (3)选课信息SC 字段名称 数据类型 字段大小 作 用 必填字段 是否主键 Sno char 10 学号 是 是 Cno char 10 课程号 是 是 Grade char 10 成绩 否 否 2).概念设计概念设计: ER 图: 学生学生 学号学号 选修选修 课程课程 姓名姓名 性别性别 年龄年龄 所在系所在系 课程号课程号 先行课号先行课号 课程名课程名 学分学分 成绩成绩 m n 4 3).逻辑设计:逻辑设计: 1,将上面 ER 图转换为关系模型,关系的码为黑体字。 学生(学号学号,姓名,性别,年龄,所在系) 此为
5、学生实体对应的关系模式,其中学号是码。 课程(课程号课程号,课程名,先行课名,学分) 此为课程实体对应的关系模式,其中课程号是码。 选修(学号学号,课程号课程号,成绩) 此为联系“选修”对应的关系模式,其中学号,课程号是码。 1,设计用户子模式 为学生用户建立视图 学生 1(姓名,性别,年龄,所在系,课程号,课程名,学分,成绩) 定义权限 为查询 为老师用户建立视图 学生(学号,姓名,性别,年龄,所在系,课程号,课程名,先行课名,学分,成 绩) 定义权限为查询,添加,修改,删除 2, Student 表设计: 4) 各模块功能实现各模块功能实现 1、 主选择界面:主选择界面: 5 2、进入信息
6、查询界面:、进入信息查询界面: 可以可以按照学号,姓名, ,所在系进行查询: (1)按学号查询:查询 95003 号学生情况: 6 ( 2 ) 按 姓 名 查询 : 查 询 名字 叫 郑 力 的学 生 情 况 : (3)按所在系查询:查找计算机系的学生情况: 7 四四.设计代码设计代码 登陆界面代码登陆界面代码: object Form1: TForm1 Left = 192 Top = 107 Width = 696 Height = 480 Caption = #23398#29983#20449#24687#26597#35810#30331#24405 Color = clBtnFace Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText Font.Height = -11 Font.Name = MS Sans Serif Font.Style = 8 OldCreateOrder = Fa