学生成绩管理系统数据库设计文档 - (全)
学生成绩管理系统数据库设计
学生成绩管理系统数据库设计一、需求分析学生成绩管理系统是一个重要的教育管理系统,它主要用于学生的成绩管理和统计。
该系统需要具有以下功能:1. 学生信息管理:包括学生的基本信息(如姓名、性别、年龄、身份证号码等)和学籍信息(如班级、学号、入学时间等)。
2. 课程信息管理:包括课程的基本信息(如课程名称、授课教师、上课时间等)和课程成绩录入。
3. 成绩查询与统计:可以按照班级或个人查询成绩,并进行成绩统计分析。
二、概念结构设计在需求分析的基础上,我们可以根据实际情况设计出该系统的概念结构模型。
该模型包括以下实体:1. 学生(Student):包括学生的基本信息和学籍信息。
2. 课程(Course):包括课程的基本信息。
3. 教师(Teacher):包括教师的基本信息。
4. 成绩(Score):包括每个学生在每门课程中所获得的成绩。
三、逻辑结构设计在概念结构模型确定后,我们需要将其转化为逻辑结构模型。
根据实际情况,我们可以设计出以下数据库表:1. 学生表(Student):包括学生的基本信息和学籍信息,如姓名、性别、年龄、身份证号码、班级、学号、入学时间等。
2. 课程表(Course):包括课程的基本信息,如课程名称、授课教师、上课时间等。
3. 教师表(Teacher):包括教师的基本信息,如姓名、性别、年龄等。
4. 成绩表(Score):包括每个学生在每门课程中所获得的成绩,如学号、课程名称、成绩等。
四、物理结构设计在逻辑结构模型确定后,我们需要将其转化为物理结构模型。
根据实际情况,我们可以设计出以下数据库表:1. 学生表(Student):包括学生的基本信息和学籍信息,如姓名(varchar(20))、性别(char(2))、年龄(int)、身份证号码(varchar(20))、班级(varchar(20))、学号(varchar(20))、入学时间(date)等。
其中,身份证号码和学号应该设为主键。
数据库设计文档范文
数据库设计文档范文1.引言数据库是一个用于存储和管理数据的系统。
数据库设计文档描述了数据库的结构和功能,帮助开发人员理解和维护数据库。
本文档旨在描述一个名为“学生管理系统”的数据库设计。
2.目标和范围学生管理系统是一个用于管理学生信息的系统。
该系统需要存储和管理学生的基本信息(如姓名、学号、年龄、性别等)以及他们的成绩记录。
本文档的目标是设计一个满足系统需求的数据库结构。
3.数据库概述学生管理系统的数据库由两个主要的表组成:学生表和成绩表。
学生表用于存储学生的基本信息,成绩表用于存储学生的成绩记录。
两个表之间通过学号建立关联。
4.学生表设计学生表包含以下字段:-学号:主键,唯一标识学生-姓名:学生的姓名-年龄:学生的年龄-性别:学生的性别-班级:学生所在的班级5.成绩表设计成绩表包含以下字段:-学号:外键,关联学生表的学号字段-课程:成绩所对应的课程名称-成绩:学生在该课程中的成绩6.数据库关系设计学生表和成绩表之间的关系是一对多关系,一个学生可以有多条成绩记录,但每个成绩只能属于一个学生。
这个关系由学号字段在学生表和成绩表之间建立。
7.数据库功能设计学生管理系统需要支持以下功能:-添加学生:向学生表中插入一条学生记录-查询学生:根据学号或其他条件查询学生信息-更新学生:更新学生表中的学生记录-删除学生:根据学号删除学生表中的学生记录-添加成绩:向成绩表中插入一条成绩记录-查询成绩:根据学号或其他条件查询学生的成绩记录8.数据库安全性设计为了保证数据库的安全性,可以采取以下措施:-数据备份:定期对数据库进行备份,防止数据丢失-数据加密:对敏感数据进行加密存储-访问控制:设定合适的用户权限,限制对数据库的访问和修改9.数据库性能设计为了提高数据库的性能,可以采取以下措施:-索引设计:对常用的查询字段建立索引,提高查询速度-表分区设计:将大表分成多个小的子表,提高查询和插入性能-缓存使用:利用缓存技术缓存查询结果,减少数据库的访问次数10.总结本文档详细描述了学生管理系统的数据库设计。
学生成绩管理系统数据库设计书
学生成绩管理系统数据库设计书1、开发背景信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生活的各个领域。
计算机虽然与人类的关系愈来愈密切,还有人由于计算机操作不方便继续用手工劳动。
基本上所有的具有一定数量数据的企事业单位或机关部门都开始使用计算机数据库来做管理。
当然几乎所有学校也都已经在使用计算机管理数据的机制,大大减少了学校学籍管理的工作量。
该课程设计要求设计一个成绩管理的数据库系统,数据库中要求包含学生的基本信息,学校所有专业信息,学校教师信息以及课程设置的信息。
同时还要设计它们之间的关系,如学生与课程关系和学生的成绩等,最后还要对一些数据进行查询,如查询学生成绩的各种集合等。
我们通过该课程设计,应该达到的目的是把数据库理论知识更加的巩固加深,加强动手能力与实践能力,学以致用,与现实生活中的应用充分的结合起来。
为了适应现代社会人们高度强烈的时间观念,成绩管理系统软件为教学办公室带来了极大的方便。
通过操作手册,使用者可以了解本软件的基本工作原理。
操作人员只需输入一些简单的汉字、数字,即可达到自己的目标。
现今学习成绩管理的繁索给具有强烈时间观念的行政人员带来了诸多不便,教学办公室缺少一种完善的学习成绩软件,为了对学生档案的管理方便,因此开发了本软件。
通过本系统软件,能帮助教研人员利用计算机,快速方便的对学生成绩管理进行管理、输入、输出、查找的所需操作,使散乱的人事档案能够具体化、直观化、合理化。
2、功能描述本系统是一个学生管理系统,主要应用于大学的学生管理。
由于对系统的分析可能不够全面,只能是模拟一下学生管理系统。
每个学生都有一个学号,且没有相同的,所以可以以学号为,密码先使用默认的每个学生后6 位数,这样,同学们就可以自行登陆学生管理系统了,并可以对密码进行更改。
老师也要进行登陆,所以,还要给分配老师,密码,同样,老师可以自己更改密码。
输入,密码,无误后,并可登陆了。
老师登陆后与学生登陆后有不同的权限。
学生成绩在线管理系统数据库课程设计mysql+java
学生成绩在线管理系统数据库课程设计mysql+java以下是一个学生成绩在线管理系统的数据库设计示例,使用MySQL数据库和Java 编程语言:1. 学生表(students)-学生ID(student_id):主键,自增-学生姓名(student_name):varchar类型,最大长度为50-学生年龄(student_age):整数类型-学生性别(student_gender):varchar类型,最大长度为10-学生班级(student_class):varchar类型,最大长度为502. 课程表(courses)-课程ID(course_id):主键,自增-课程名称(course_name):varchar类型,最大长度为503. 成绩表(scores)-成绩ID(score_id):主键,自增-学生ID(student_id):外键,关联到学生表的学生ID-课程ID(course_id):外键,关联到课程表的课程ID-分数(score):浮点数类型通过以上表的设计,你可以实现以下功能:-添加学生信息-添加课程信息-添加学生成绩-查询学生信息-查询课程信息-查询学生的成绩-更新学生信息-更新课程信息-更新学生成绩-删除学生信息-删除课程信息-删除学生成绩在Java中,你可以使用JDBC(Java Database Connectivity)来连接MySQL数据库并执行SQL语句来实现对数据库的操作。
你需要配置数据库连接信息,并编写相应的Java代码来执行查询和更新操作。
这只是一个简单的数据库设计示例,你可以根据你的具体需求进行调整和扩展。
学生成绩管理系统数据库设计-(全)
“学生成绩管理”数据库设计文档0、前言(一些必要的说明。
)0.1 数据库说明数据库名:PXSCJ逻辑名称:学生成绩数据库数据文件:PXSCJ.mdf日志文件:PXSCJ_Log登录名:admin,密码:1234560.2表命名说明Cjb:成绩表,保存选课信息Cxb:查询表,记录boolean值对应信息,1代表男,0代表女。
Kcb:课程表。
Tjb:统计表,统计成绩段分布。
Xsb:学生表。
Yhb:用户表,保存系统用户信息。
Jsb: 教师表。
Skb:授课表,记录授课信息。
0.3 系统功能模块图1、 需求分析阶段说明:学生成绩管理系统需要实现以下功能:一个学生可以选修多门课程,一门课程可以由多个学生选修,学生选修一门课会有一个成绩。
一个教师可以教授多个班级,一个教师也可以教授多门课程,一个班级有多个学生,一门课程也可以由多个老师来上,一个老师给一个班级上一门课有确定的时间和地点。
不同的用户根据身份不同拥有不同的权限。
(1) 数据流图老师----成绩管理,学生信息管理,权限管理---学生成绩管理系统—成绩查询--学生(要求:用visio 实现第一层数据流图,第二层数据流图,第三层数据流图)p121老师学生学生成绩管理系统成绩管理信息管理权限管理成绩查询修改密码第一层数据流图第二层数据流图第三层数据流图(略)(2)数据字典(每个实体的详细说明)2、 概念设计阶段(1) 分ER 图(两个分ER 图,1)学生和课程,2)教师,课程,班级)(2) 总ER 图(由分ER 图画出总ER 图)学生选课教师课程授课班级nm mnp3、逻辑设计阶段(1)表关系图(看是否可以画出)(2)表结构图Xsb结构Kcb结构Cjb结构Yhb结构Jsb结构Skb结构Tjb结构Cxb结构(3)表优化(判断每个关系是否达到3NF要求,如果没有达到,则继续规)按照(1nf->2nf->3nf进行判断和优化)Cjb(xh,kch,cj)码:(xh,kch)非主属性:cj因为cj完全依赖于(xh,kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFCxb(xb,xbm)码:(xbm)非主属性:xb因为xb完全依赖于(kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFJsb(jsbh,jsxm,zy,fy,zc,zw,bz)码:(jsbh)非主属性:jsxm,zy,fy,zc,zw,bz因为jsxm,zy,fy,zc,zw,bz完全依赖于(kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFKcb(kch,kcm,kkxq,xs,xf)码:(kch)非主属性:kcm,kkxq,xs,xf因为kcm,kkxq,xs,xf完全依赖于(kch),所以属于2NF 因为不存在传递函数依赖,所以属于3NFSkb(jsbh,kch,bj,sj,dd)码:(jsbh,kch,bj)非主属性:sj,dd因为sj,dd完全依赖于(jsbh,kch,bj),所以属于2NF因为不存在传递函数依赖,所以属于3NFTjb(kch,rs1,rs2,rs3,rs4,rs5)码:(kch)非主属性:rs1,rs2,rs3,rs4,rs5因为rs1,rs2,rs3,rs4,rs5完全依赖于(kch),所以属于2NF 因为不存在传递函数依赖,所以属于3NFXsb(xh,xm,xb,cssj,bj,zy,zxf,bz,lxfs,zp)码:(xh)非主属性:xm,xb,cssj,bj,zy,zxf,bz,lxfs,zp因为xm,xb,cssj,bj,zy,zxf,bz,lxfs,zp完全依赖于(xh),所以属于2NF 因为不存在传递函数依赖,所以属于3NFYhb(yhbh,yhm,mm,bz)码:(yhbh)非主属性:yhm,mm,bz因为yhm,mm,bz完全依赖于(yhbh),所以属于2NF因为不存在传递函数依赖,所以属于3NF4、物理设计选择合适的DBMS(要求用sql server 2008)5、实施(把sql语句贴在下面)(1)创建数据库(把sql语句贴在下面)create database pxscj1on(name='pxscj1_data',filename='f:\pxscj1_data.mdf',size=3mb,filegrowth=10%)log on(name='pxscj1_log', filename='f:\pxscj1_log.ldf', size=4mb,maxsize=6mb,filegrowth=1mb)(2)创建表(把sql语句贴在下面)create table xsb(xh char(6)not null primary key, xm char(8)not null,xb bit,cssj datetime,bj varchar(50)not null,zy char(12),zxf int,bz varchar(500),lxfs varchar(50),zp varbinary(max))create table kcb(kch char(3)not null primary key, kcm char(16)not null,kkxq tinyint,xs tinyint,xf tinyint)create table cjb(xh char(6),kch char(6),cj int,constraint c1primary key(xh,kch) )create table yhb(yhbh char(6)primary key not null, yhm char(8),sf varchar(20),mm char(6),bz varchar(5))create table jsb(jsbh char(6)not null primary key,jsxm char(8),zy varchar(30),fy varchar(30),zc varchar(20),zw varchar(20),bz varchar(50))create table skb(jsbh char(6)not null,kch char(3)not null,bj varchar(50)not null,sj varchar(20),dd varchar(50),constraint c2primary key(jsbh,kch,bj) )create table tjb(kch char(3)primary key not null,rs1int,rs2int,rs3int,rs4int,rs5int)create table cxb(xb bit not null,xbm char(4)not null primary key)(3)数据库完整性2)视图学生选课情况视图(学号,姓名,课程号,课程名,成绩,学分,总学分,教师)create view xs_xk_viewasselect xsb.XH,XM,kcb.KCH,kcm,CJ,xf,zxf,jsb.jsbh,jsxmfrom xsb,KCB,CJB,jsb,skbwhere xsb.XH=cjb.XH and kcb.KCH=cjb.KCHand cjb.KCH=skb.kch and skb.jsbh=jsb.jsbhselect*from xs_xk_view3)自定义数据库类型学号,课程号可以考虑用自定义的数据类型。
学生成绩管理系统数据库设计文档 - (全)
“学生成绩管理”数据库设计文档0、前言(一些必要的说明。
)0、1 数据库说明数据库名:PXSCJ逻辑名称:学生成绩数据库数据文件:PXSCJ、mdf日志文件:PXSCJ_Log登录名:admin,密码:1234560、2表命名说明Cjb:成绩表,保存选课信息Cxb:查询表,记录boolean值对应信息,1代表男,0代表女。
Kcb:课程表。
Tjb:统计表,统计成绩段分布。
Xsb:学生表。
Yhb:用户表,保存系统用户信息。
Jsb: 教师表。
Skb:授课表,记录授课信息。
0、3 系统功能模块图1、 需求分析阶段说明:学生成绩管理系统需要实现以下功能:一个学生可以选修多门课程,一门课程可以由多个学生选修,学生选修一门课会有一个成绩。
一个教师可以教授多个班级,一个教师也可以教授多门课程,一个班级有多个学生,一门课程也可以由多个老师来上,一个老师给一个班级上一门课有确定的时间与地点。
不同的用户根据身份不同拥有不同的权限。
(1) 数据流图老师----成绩管理,学生信息管理,权限管理---学生成绩管理系统—成绩查询--学生(要求:用visio 实现第一层数据流图,第二层数据流图,第三层数据流图)p121老师学生学生成绩管理系统成绩管理信息管理权限管理成绩查询修改密码第一层数据流图第二层数据流图第三层数据流图(略) (2)数据字典(每个实体的详细说明)2、概念设计阶段(1)分ER图(两个分ER图,1)学生与课程,2)教师,课程,班级)(2)总ER图(由分ER图画出总ER图)3、逻辑设计阶段(1)表关系图(瞧就是否可以画出)(2)表结构图Xsb结构Kcb结构Cjb结构Yhb结构Jsb结构Skb结构Tjb结构Cxb结构(3)表优化(判断每个关系就是否达到3NF要求,如果没有达到,则继续规范) 按照(1nf->2nf->3nf进行判断与优化)Cjb(xh,kch,cj)码:(xh,kch)非主属性:cj因为cj完全依赖于(xh,kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFCxb(xb,xbm)码:(xbm)非主属性:xb因为xb完全依赖于(kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFJsb(jsbh,jsxm,zy,fy,zc,zw,bz)码:(jsbh)非主属性:jsxm,zy,fy,zc,zw,bz因为jsxm,zy,fy,zc,zw,bz完全依赖于(kch),所以属于2NF 因为不存在传递函数依赖,所以属于3NFKcb(kch,kcm,kkxq,xs,xf)码:(kch)非主属性:kcm,kkxq,xs,xf因为kcm,kkxq,xs,xf完全依赖于(kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFSkb(jsbh,kch,bj,sj,dd)码:(jsbh,kch,bj)非主属性:sj,dd因为sj,dd完全依赖于(jsbh,kch,bj),所以属于2NF因为不存在传递函数依赖,所以属于3NFTjb(kch,rs1,rs2,rs3,rs4,rs5)码:(kch)非主属性:rs1,rs2,rs3,rs4,rs5因为rs1,rs2,rs3,rs4,rs5完全依赖于(kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFXsb(xh,xm,xb,cssj,bj,zy,zxf,bz,lxfs,zp)码:(xh)非主属性:xm,xb,cssj,bj,zy,zxf,bz,lxfs,zp因为xm,xb,cssj,bj,zy,zxf,bz,lxfs,zp完全依赖于(xh),所以属于2NF 因为不存在传递函数依赖,所以属于3NFYhb(yhbh,yhm,mm,bz)码:(yhbh)非主属性:yhm,mm,bz因为yhm,mm,bz完全依赖于(yhbh),所以属于2NF因为不存在传递函数依赖,所以属于3NF4、物理设计选择合适的DBMS(要求用sql server 2008)5、实施(把sql语句贴在下面)(1)创建数据库(把sql语句贴在下面)create database pxscj1on(name='pxscj1_data',='f:\pxscj1_data、mdf',size=3mb,=10%)log on(name='pxscj1_log',='f:\pxscj1_log、ldf',size=4mb,maxsize=6mb,=1mb)(2)创建表(把sql语句贴在下面)create table xsb(xh char(6)not null primary key, xm char(8)not null,xb bit,cssj datetime,bj varchar(50)not null,zy char(12),zxf int,bz varchar(500),lxfs varchar(50),zp varbinary(max))create table kcb(kch char(3)not null primary key,kcm char(16)not null,kkxq tinyint,xs tinyint,xf tinyint)create table cjb(xh char(6),kch char(6),cj int,constraint c1primary key(xh,kch) )create table yhb(yhbh char(6)primary key not null, yhm char(8),sf varchar(20),mm char(6),bz varchar(5))create table jsb(jsbh char(6)not null primary key, jsxm char(8),zy varchar(30),fy varchar(30),zc varchar(20),zw varchar(20),bz varchar(50))create table skb(jsbh char(6)not null,kch char(3)not null,bj varchar(50)not null,sj varchar(20),dd varchar(50),constraint c2primary key(jsbh,kch,bj))create table tjb(kch char(3)primary key not null,rs1int,rs2int,rs3int,rs4int,rs5int)create table cxb(xb bit not null,xbm char(4)not null primary key)(3)数据库完整性2)视图学生选课情况视图(学号,姓名,课程号,课程名,成绩,学分,总学分,教师)create view xs_xk_viewasselect xsb、XH,XM,kcb、KCH,kcm,CJ,xf,zxf,jsb、jsbh,jsxm from xsb,KCB,CJB,jsb,skbwhere xsb、XH=cjb、XH and kcb、KCH=cjb、KCHand cjb、KCH=skb、kch and skb、jsbh=jsb、jsbhselect*from xs_xk_view3)自定义数据库类型学号,课程号可以考虑用自定义的数据类型。
数据库课程设计学生成绩管理系统
可以进一步加强系统的 安全性设计,如增加用 户权限管理、数据备份 与恢复等功能,确保数 据的完整性和安全性。
THANKS
感谢观看
情况下的容错处理。
性能测试用例
设计针对不同用户数量和不同数据量 的测试用例,以验证系统的性能和稳
定性。
安全测试用例
设计针对系统安全性的测试用例,如 用户权限验证、数据加密传输等。
测试执行与结果分析
测试执行
按照测试计划和测试用例进行测试,记录测试结果和发现的问题 。
问题跟踪与修复
对发现的问题进行跟踪,确保问题得到及时修复,并重新进行测试 验证。
测试方法
采用黑盒测试和白盒测试相结合的方法,包括功能测试、 性能测试、安全测试等。
测试范围
包括系统的所有功能模块,如学生信息管理、课程管理、 成绩录入与查询、报表生成等。
测试资源
包括测试人员、测试环境、测试数据等。
测试用例设计
功能测试用例
针对系统的每个功能模块设计测试用 例,包括正常情况下的操作以及异常
系统功能实现
课程信息管理
实现课程基本信息的录入、修 改、查询和删除功能。
报表生成
根据需求生成各类报表,如学 生成绩单、课程统计表等。
学生信息管理
实现学生基本信息的录入、修 改、查询和删除功能。
成绩录入与查询
实现学生成绩的录入、修改、 查询和删除功能,支持批量导 入成绩数据。
权限管理
实现不同用户角色的权限管理 ,确保系统的安全性和稳定性 。
常见问题与解决方案
数据库连接问题
检查数据库连接配置是否正确,确保数据库服务 正常运行,并尝试重新启动数据库服务或修复连 接问题。
系统性能下降
网络数据库课程设计(学生成绩管理系统)
目录第一章系统概述1.1系统开发的背景和意义 (1)1.2系统所要实现功能 (1)1.3系统开发工具 (1)1.4系统模块分析 (1)第二章系统需求分析2.1系统目标分析 (3)2.2系统数据描述 (3)2.3系统数据流图 (5)2.4系统数据字典 (6)2.5系统数据库概念设计 (8)第三章系统总体设计3.1系统功能模块设计 (11)3.2系统主要功能描述 (11)3.3系统流程分析 (12)第四章系统详细设计4.1程序流程设计 (13)4.2系统结构的实现 (14)第五章系统界面设计及代码实现5.1系统登陆窗口界面 (17)5.2系统主程序窗口界面 (18)5.3住宿管理设计 (20)5.4客人信息查询 (27)5.5 系统管理 (29)5.6订房信息管理 (31)5.7结算信息管理 (34)第六章系统测试6.1 测试目的 (38)6.2 测试方法 (38)6.3 测试记录与运行结果 (38)总结参考文献第一章系统概述及可行性分析1.1系统开发的背景在信息时代,能够代表一个国家信息产业水平和竞争能力的就是软件产业。
作为21世纪的朝阳产业,软件是全球最具发展前景与开发潜力的产业之一,已成为全球经济新的增长点,而且也逐渐成为世界各国竞相占领的战略制高点。
软件市场大致可以分为应用软件、系统软件和工具软件。
应用软件仍是软件市场的主流,约占69%。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对学生成绩信息进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学生成绩管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
因此,开发这样一套管理软件成为很有必要的事情。
成绩管理系统,在国内外早已有着成熟的研究成果和广泛的社会应用。
数据库课程设计(学生成绩管理系统)
得分: 课程设计报告学生信息管理系统设计姓名李富荣班级09网络1班学号20090504113课程名称数据库原理及应用指导教师王建颖2012年1月3日目录一概述 (1)1.1目的与要求………………………………………………。
11.2设计环境…………………………………………………。
.1二需求分析………………………………………………….。
1 2。
1 系统功能要求设计…………………………………………。
12。
2 系统模块设计 (1)2.3 数据字典 (2)三概念模型设计……………………………………………….。
4四逻辑和物理结构设计………………………………………。
44.1由系统E-R图转化而得到的关系模式 (5)4.2 确定关系模型的存取方法………………………………。
.54.3 确定数据库的存储结构…………………………………。
.55.1 数据库的实施 (5)五数据库的实施与维护..........................................。
5 5。
1 数据库的实施 (6)5.2部分操作截图 (25)5.3数据库的维护......................................................。
27六总结 (27)学生信息管理系统一概述1.1目的与要求随着科技的发展,基本上所有的具有一定数量数据的机构都开始使用计算机数据库来做管理。
几乎所有学校也都已经在使用计算机管理数据的机制,大大减少了学校学生成绩管理的工作量。
该课程设计要求设计一个学生成绩的数据库管理系统,数据库中要求包含学生的基本信息,学科基本信息,以及学生所学课程的考试成绩。
要方便学生进行成绩查询,通过该课程设计,应该达到把数据库理论知识更加的巩固加深,加强动手能力与实践能力,学以致用,与现实生活中的应用充分的结合起来。
1。
2设计环境① Microsoft SQL Server 2000② Microsoft Visual C++ 6。
学生成绩管理系统数据库设计
学生成绩管理系统数据库设计一、引言学生成绩管理系统是现代教育系统中必不可少的一部分。
数据库作为该系统的核心组成部分,用于存储和管理学生的个人信息和学业成绩数据。
本文将介绍学生成绩管理系统数据库设计的方案,包括数据库的结构、关系和各个表的字段及其类型。
二、数据库结构学生成绩管理系统数据库包含多个表,每个表对应一个实体或关系。
以下是数据库的主要结构:1. 学生表(Student)该表存储学生的个人信息,如学生ID、姓名、年龄、性别、班级等。
表结构如下:- 学生ID(StudentID):主键,用于唯一标识学生。
- 姓名(Name):学生的姓名。
- 年龄(Age):学生的年龄。
- 性别(Gender):学生的性别。
- 班级(Class):学生所在的班级。
2. 课程表(Course)该表存储所有开设的课程信息,如课程ID、课程名称、学分等。
表结构如下:- 课程ID(CourseID):主键,用于唯一标识课程。
- 课程名称(CourseName):课程的名称。
- 学分(Credit):课程的学分。
3. 成绩表(Grade)该表存储学生的成绩信息,包括学生ID、课程ID、成绩等。
表结构如下:- 学生ID(StudentID):外键,与学生表中的学生ID相关联。
- 课程ID(CourseID):外键,与课程表中的课程ID相关联。
- 成绩(Score):学生在某一门课程中的成绩。
三、关系说明学生成绩管理系统数据库中的表之间存在以下关系:1. 学生与课程的多对多关系一个学生可以选择多门课程,而一门课程也可以被多个学生选择。
这种关系可以通过成绩表来连接学生表和课程表。
2. 学生与成绩的一对多关系一个学生可以有多门课程的成绩,而一门课程只对应一个学生的成绩。
这种关系可以通过成绩表中的学生ID字段来建立。
3. 课程与成绩的一对多关系一门课程可以有多个学生的成绩,而一个学生只对应一门课程的成绩。
这种关系可以通过成绩表中的课程ID字段来建立。
学生成绩管理系统数据库设计说明书(1)
学生成绩管理系统数据库设计说明书(1)学生成绩管理系统数据库设计说明书一、数据库设计目的学生成绩管理系统旨在方便教师、学生和学校管理者查看和管理学生成绩信息。
本数据库设计说明书的目的是确保数据库的设计和实现能够满足学生成绩管理系统的需求,具有可扩展性和可维护性。
二、数据库设计步骤1.需求分析分析需求是数据库设计的第一步,只有清楚了解学生成绩管理系统的功能需求,才能进行合理的数据库设计。
需要考虑的方面包括学生、课程、成绩等信息的输入、查询、更新和删除功能等。
2.概念设计在理解需求的基础上,采用ER图对数据库的概念结构进行设计。
此步骤需要确定实体、属性和关系,以及各个实体之间的关系。
3.逻辑设计在概念设计的基础上,将实体关系模型转化为关系模型。
此步骤需要获得逻辑结构,如表和列的结构,确定主键和外键等。
4.物理设计在逻辑设计的基础上,确定数据库的实现方式和存储方式,包括表字段的数据类型、长度、约束等等。
5.数据库实现根据设计完成后的数据库,创建表格并关联字段、添加索引、视图、存储过程等。
三、数据库设计方案1.数据库名称:studentscoremanagement2.表格设计:学生表(Student):学生编号(StudentID)-主键 -学号学生姓名(StudentName)-字串性别(Gender)-枚举(M/F)出生年月(BirthDate)-日期班级(Class)-字串课程表(Course):课程编号(CourseID)-主键课程名称(CourseName)-字串学分(Credit)-浮点数任课教师(TeacherName)-字串成绩表(Score):学生编号(StudentID)-外键课程编号(CourseID)-外键成绩(Grade)-浮点数3.关系设计:学生表和成绩表:一对多关系(一个学生可以有多个成绩)课程表和成绩表:一对多关系(一个课程可以有多个成绩)4.索引设计:为了优化查询速度,可在学生表和课程表中的主键上建立唯一索引。
(完整word版)学生成绩管理系统数据库设计
JIANGXI AGRICULTURAL UNIVERSITY数据库课程设计报告题目:学生成绩管理系统数据库设计学院:姓名:学号:专业:班级:指导教师:二0一二年6 月目录一、需求分析 (4)1。
1 需求概述 (4)1。
2 功能简介 (4)二、数据库设计 (4)2。
1 确定联系集及E—R图 (4)2。
2 画出E—R图 (5)2.3学生成绩管理系统总E-R图 (6)三、逻辑数据库设计阶段 (7)3。
1 班级信息表(Class) (8)3。
2 学生信息表(Student) (8)3。
3 课程信息表(Course) (9)3.4 成绩表(Score) (9)四、建表 (10)4.1 创建数据库 (10)4。
2 创建数据表 (10)五、数据库的运行和维护 (11)5。
1 定义 (11)5。
1。
1 基本表的创建,建表语句 (11)5。
1.2 基本表的删除 (12)5.2 数据操作 (12)5.2.1 单表查询: (12)5.2。
2 连接查询 (12)5.2。
3 操作结果集查询 (13)5。
2.4 嵌套查询 (13)5.3 数据库更新操作 (14)5.3.1 插入数据 (14)5.3。
2 修改数据 (14)5。
3.3 删除数据 (14)5.4 为数据库建立索引 (15)5。
4。
1 索引的建立 (15)5。
4。
2 索引的删除 (15)5。
5 数据库的安全性 (15)5。
6 数据库的完整性 (16)5。
6.1 实体完整性定义 (16)5.6.2 参照完整性定义 (16)六、模式求精 (16)七、总结 (17)一、需求分析1。
1 需求概述针对江西农大的成绩管理工作量大、繁杂,人工处理非常困难.学生成绩管理系统借助于计算机强大的处理能力,大大减轻了管理人员的工作量,并提高了处理的准确性.学生成绩管理系统的开发运用,实现了学生成绩管理的自动化,不仅把广大教师从繁重的成绩管理工作中解脱出来、把学校从传统的成绩管理模式中解放出来,而且对学生成绩的判断和整理更合理、更公正,同时也给教师提供了一个准确、清晰、轻松的成绩管理环境。
学生成绩管理系统数据库设计说明书
学绩管理系统数据库设计说明书学绩管理系统数据库设计说明书1.引言本文档旨在提供学绩管理系统数据库的详细设计说明,包括系统的需求、数据库结构设计、表的定义和字段定义等内容。
2.系统需求2.1 功能需求学绩管理系统应具备以下功能:- 学生信息管理:包括学生基本信息(学号、姓名、性别、年级等)管理和学生课程信息管理。
- 成绩录入与查询:教师可以录入学生的成绩信息,并提供成绩查询功能,学生和家长可以通过系统查询学生的成绩信息。
- 成绩统计与分析:系统能够对学生的成绩进行统计和分析,如平均成绩、排名等。
- 报表查看与:系统能够学绩的报表供教师和学校管理人员查看和。
2.2 性能需求系统应具备良好的性能,能够处理大量的学生和成绩数据。
同时,系统的响应时间应尽可能快,能够提供快速的成绩查询和统计分析功能。
3.数据库结构设计3.1 学生信息表(Student)字段:- 学号(StudentID):学生的唯一标识。
- 姓名(Name):学生姓名。
- 性别(Gender):学生性别。
- 年级(Grade):学生所在年级。
3.2 课程信息表(Course)字段:- 课程代码(CourseID):课程的唯一标识。
- 课程名称(CourseName):课程名称。
3.3 成绩表(Score)字段:- 学号(StudentID):学生的唯一标识。
- 课程代码(CourseID):课程的唯一标识。
- 成绩(Score):学生的成绩。
4.表的定义4.1 学生信息表(Student)CREATE TABLE Student (StudentID int PRIMARY KEY,Name varchar(50),Gender varchar(10),Grade varchar(20));4.2 课程信息表(Course)CREATE TABLE Course (CourseID int PRIMARY KEY,CourseName varchar(50));4.3 成绩表(Score)CREATE TABLE Score (StudentID int,CourseID int,Score numeric(5,2),PRIMARY KEY (StudentID, CourseID),FOREIGN KEY (StudentID) REFERENCES Student(StudentID), FOREIGN KEY (CourseID) REFERENCES Course(CourseID));5.字段定义5.1 学生信息表(Student)- 学号(StudentID):整数型,作为学生的唯一标识。
学生成绩管理系统数据库设计说明书
《学生成绩管理系统数据库设计说明书》一.引言1.编写目地随着知识经济,科技的不断发展以及科技在各领域的不断深入,越来越多的行业和领域步入信息智能化阶段。
信息自动化处理也是提高效益,规范管理,迅速客观审查的有效途径。
学生成绩管理系统在当今教育领域是一个不可缺少的工具软件。
然而,一个好的高质量的软件少之又少,并为根本实现智能化,也不利于科学的管理和审查。
因此,在本软件中心准备开发一个功能完善的学生成绩管理系统。
学生成绩管理系统是学校不可缺少的部分,它的内容对于学校和学生来说都有至关重要的作用。
因此,在本软件设计中心准备开发一个功能完善的学生成绩管理系统。
本文档将对《学生成绩管理系统》这一项目开发的计划进行描述,本文档的读者有:软件开发人员,在校学生,老师,系统管理人员。
2.背景说明:●开发的软件系统的名称:学生成绩管理系统●本项目任务的提出者是江西农业大学,开发者为软件1115班朱利斌,杨彪,廖连云。
用户为江西农业大学全体学生和老师。
实现该软件的计算机中心为个人计算机,sql server , WindowXP , win7 ,win8操作系统;●该软件系统最终将添加于江西农业大学教务网上,登入进江西农业大学教务网的个人页面即可查看学生成绩管理系统;3.定义Students Score System :学生成绩管理系统。
成绩管理:所谓成绩管理,是指以学校中的学生为对象,根据学生的成绩来做记录,将学生的成绩进行有关操作和分配。
并对学生的成绩进行总和与管理。
4.参考资料●《项目开发计划编写参考指南》●《软件文档国家标准》[1] 张海藩,《软件工程导论》,清华大学出版社,2008[2] 陆丽娜,《软件工程》,经济科学出版社,2008[3] 萨师煊,《数据库系统概论》,高等教育出版社,2006[4]薛华成,《管理信息系统》,清华大学出版社,2007二.外部设计1.标识符和状态数据库标示符:student_grade用户名:user密码:secret权限:全部有效时间:开发阶段说明:系统正式发布后,可能更改数据库用户/密码,请在统一位置编写数据库连接字符串,在发行前请予以改正。
学生成绩管理系统数据库设计全(一)
学生成绩管理系统数据库设计全(一)学生成绩管理系统数据库设计全随着教育信息化的不断推进,学生成绩管理系统逐渐成为学校教育管理的重要组成部分。
本文将从数据库设计角度,介绍学生成绩管理系统数据库的全面设计。
一、需求分析学生成绩管理系统需要支持以下功能:1.录入学生、课程、教师、班级、成绩信息2.查询学生、课程、教师、班级、成绩信息3.修改学生、课程、教师、班级、成绩信息4.删除学生、课程、教师、班级、成绩信息5.统计成绩信息、排名6.计算平均分、总分、最高分、最低分7.生成成绩单、班级报告等报表二、数据库设计基于需求分析结果,我们可以设计以下数据库模型:1.学生信息表(student_info)字段名 | 数据类型 | 备注--------|--------|--------id | int | 主键,自增name | varchar(20) | 姓名gender | varchar(2) | 性别birthday | date | 出生日期class_id | int | 外键,班级ID2.班级信息表(class_info)字段名 | 数据类型 | 备注--------|--------|--------id | int | 主键,自增name | varchar(20) | 班级名称3.教师信息表(teacher_info)字段名 | 数据类型 | 备注--------|--------|--------id | int | 主键,自增name | varchar(20) | 姓名gender | varchar(2) | 性别4.课程信息表(course_info)字段名 | 数据类型 | 备注--------|--------|--------id | int | 主键,自增name | varchar(20) | 课程名称5.成绩信息表(score_info)字段名 | 数据类型 | 备注--------|--------|--------id | int | 主键,自增course_id | int | 外键,课程ID student_id | int | 外键,学生ID teacher_id | int | 外键,教师ID score | int | 分数6.报表信息表(report_info)字段名 | 数据类型 | 备注--------|--------|--------id | int | 主键,自增student_id | int | 外键,学生ID course_id | int | 外键,课程ID teacher_id | int | 外键,教师ID score | int | 分数mean_score | float(2) | 平均分top_score | int | 最高分low_score | int | 最低分rank | int | 排名三、系统架构学生成绩管理系统的整体架构如下:1.数据采集模块该模块用于录入、修改、删除学生成绩信息。
学生成绩管理系统数据库设计全(1)
学生成绩管理系统数据库设计全(1)学生成绩管理系统数据库设计全学生成绩管理系统的数据库设计是该系统的核心部分。
一个高性能的数据库设计可以提高系统的稳定性和可靠性,同时也能帮助系统管理员更好地管理和维护该系统。
下面就来介绍一下学生成绩管理系统的数据库设计全过程。
1.需求分析在进行数据库设计之前,首先需要进行需求分析。
学生成绩管理系统主要是用于学生、教师、管理员的信息管理和成绩管理,因此需要收集以下信息:(1)学生信息:学生ID、姓名、性别、所属班级、联系方式等。
(2)教师信息:教师ID、姓名、性别、所教班级、出生日期等。
(3)课程信息:课程ID、课程名称、授课教师等。
(4)成绩信息:学生ID、课程ID、成绩等。
(5)班级信息:班级ID、班级名称、班主任、年级等。
2.概念设计在需求分析的基础上,需要进行概念设计。
根据需求,我们可以列出以下实体:(1)学生(Student)(2)教师(Teacher)(3)课程(Course)(4)成绩(Grade)(5)班级(Class)每个实体包含的属性见需求分析。
3.逻辑设计在进行逻辑设计时,需要将概念设计转化为数据库中的表。
按照需求和实体属性,我们可以创建以下数据表:(1)学生表(Student):学生ID(主键)、姓名、性别、所属班级ID、联系方式等。
(2)教师表(Teacher):教师ID(主键)、姓名、性别、所教班级ID、出生日期等。
(3)课程表(Course):课程ID(主键)、课程名称、授课教师ID 等。
(4)成绩表(Grade):成绩ID(主键)、学生ID、课程ID、成绩等。
(5)班级表(Class):班级ID(主键)、班级名称、班主任ID、年级等。
4.物理设计在进行物理设计时,需要考虑到数据表的存储和管理。
根据需求和实际情况,我们可以选择以下存储方式:(1)学生表、教师表、班级表和课程表均采用InnoDB引擎,以支持外键约束和事务处理。
(2)成绩表采用MyISAM引擎,以支持快速的读写操作。
学生成绩管理系统数据库设计资料
课程设计报告学院、系:吉林大学珠海学院计算机科学与技术系专业名称:软件工程课程设计科目:数据库系统概论题目:学生成绩管理系统学号、姓名:指导教师:完成时间:2010年10月--12月工作任务的分工和人员分配学生成绩管理系统(一)调查用户需求本系统的最终用户为管理员。
根据我们日常生活中的经验,结合对学校管理员对成绩管理的需求得到一下几方面内容::1、成绩库的基本情况学校只有一个成绩管理室,每次考完试都要记录成绩,过多的书本记录会造成空间的浪费,所以需要一个数据库来进行日常管理。
1)学生的基本信息:入校时,每位同学都有唯一的学号,都被分配到不同的班级,有自己的班级号,每个学生都有一个学号。
2)课程的基本信息:包括课程的课程号,课程名,课时。
3)成绩单的基本信息:由学生的姓名,学号,成绩,课程号,课程名。
2、用户对系统的要求1)、成绩管理员:a.信息要求:成绩管理员能查询所有成绩相关信息,包括某一学号的学生考试的详细信息和学生的详细信息,以利于对整个成绩系统的全面管理。
b.处理要求:当记录学生成绩信息可能发生错误时,成绩管管理员能对其进行修改。
比如,某些同学被查出是作弊,成绩作废,他在系统中相应的记录就应该标记为0;或者是缺考,他记录中的信息也要作相应的修改等等。
当学生的基本信息发生变更时,成绩管理员能根据有关证明做出修改。
c.安全性与完整性要求:安全性要求:系统应设置访问用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;系统应对不同用户设置不同的权限,区分不同的用户,如区分普通管理人员,高级管理员。
完整性要求:各种信息记录的完整性,信息记录内容不能为空;各种数据间相互的联系的正确性;相同的数据在不同记录中的一致性。
二、系统功能的设计和划分根据如上得到的用户需求,我们将本系统按照所完成的功能分成以下几部分:用户查询部分,管理员管理部分。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
“学生成绩管理”数据库设计文档0、前言(一些必要的说明。
)0.1 数据库说明数据库名:PXSCJ逻辑名称:学生成绩数据库数据文件:PXSCJ.mdf日志文件:PXSCJ_Log登录名:admin,密码:1234560.2表命名说明Cjb:成绩表,保存选课信息Cxb:查询表,记录boolean值对应信息,1代表男,0代表女。
Kcb:课程表。
Tjb:统计表,统计成绩段分布。
Xsb:学生表。
Yhb:用户表,保存系统用户信息。
Jsb: 教师表。
Skb:授课表,记录授课信息。
0.3 系统功能模块图1、需求分析阶段说明:学生成绩管理系统需要实现以下功能:一个学生可以选修多门课程,一门课程可以由多个学生选修,学生选修一门课会有一个成绩。
一个教师可以教授多个班级,一个教师也可以教授多门课程,一个班级有多个学生,一门课程也可以由多个老师来上,一个老师给一个班级上一门课有确定的时间和地点。
不同的用户根据身份不同拥有不同的权限。
(1)数据流图老师----成绩管理,学生信息管理,权限管理---学生成绩管理系统—成绩查询--学生(要求:用visio实现第一层数据流图,第二层数据流图,第三层数据流图)p121第一层数据流图第二层数据流图第三层数据流图(略)(2)数据字典(每个实体的详细说明)2、 概念设计阶段(1) 分ER 图(两个分ER 图,1)学生和课程,2)教师,课程,班级)(2) 总ER 图(由分ER 图画出总ER 图)学生选课教师课程授课班级nm mnp3、逻辑设计阶段(1)表关系图(看是否可以画出)(2)表结构图Xsb结构Kcb结构Cjb结构Yhb结构Jsb结构Skb结构Tjb结构Cxb结构(3)表优化(判断每个关系是否达到3NF要求,如果没有达到,则继续规范)按照(1nf->2nf->3nf进行判断和优化)Cjb(xh,kch,cj)码:(xh,kch)非主属性:cj因为cj完全依赖于(xh,kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFCxb(xb,xbm)码:(xbm)非主属性:xb因为xb完全依赖于(kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFJsb(jsbh,jsxm,zy,fy,zc,zw,bz)码:(jsbh)非主属性:jsxm,zy,fy,zc,zw,bz因为jsxm,zy,fy,zc,zw,bz完全依赖于(kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFKcb(kch,kcm,kkxq,xs,xf)码:(kch)非主属性:kcm,kkxq,xs,xf因为kcm,kkxq,xs,xf完全依赖于(kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFSkb(jsbh,kch,bj,sj,dd)码:(jsbh,kch,bj)非主属性:sj,dd因为sj,dd完全依赖于(jsbh,kch,bj),所以属于2NF因为不存在传递函数依赖,所以属于3NFTjb(kch,rs1,rs2,rs3,rs4,rs5)码:(kch)非主属性:rs1,rs2,rs3,rs4,rs5因为rs1,rs2,rs3,rs4,rs5完全依赖于(kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFXsb(xh,xm,xb,cssj,bj,zy,zxf,bz,lxfs,zp)码:(xh)非主属性:xm,xb,cssj,bj,zy,zxf,bz,lxfs,zp因为xm,xb,cssj,bj,zy,zxf,bz,lxfs,zp完全依赖于(xh),所以属于2NF 因为不存在传递函数依赖,所以属于3NFYhb(yhbh,yhm,mm,bz)码:(yhbh)非主属性:yhm,mm,bz因为yhm,mm,bz完全依赖于(yhbh),所以属于2NF因为不存在传递函数依赖,所以属于3NF4、物理设计选择合适的DBMS(要求用sql server 2008)5、实施(把sql语句贴在下面)(1)创建数据库(把sql语句贴在下面)create database pxscj1on(name='pxscj1_data',filename='f:\pxscj1_data.mdf',size=3mb,filegrowth=10%)log on(name='pxscj1_log',filename='f:\pxscj1_log.ldf',size=4mb,maxsize=6mb,filegrowth=1mb)(2)创建表(把sql语句贴在下面)create table xsb(xh char(6)not null primary key,xm char(8)not null,xb bit,cssj datetime,bj varchar(50)not null,zy char(12),zxf int,bz varchar(500),lxfs varchar(50),zp varbinary(max))create table kcb(kch char(3)not null primary key, kcm char(16)not null,kkxq tinyint,xs tinyint,xf tinyint)create table cjb(xh char(6),kch char(6),cj int,constraint c1primary key(xh,kch))create table yhb(yhbh char(6)primary key not null,yhm char(8),sf varchar(20),mm char(6),bz varchar(5))create table jsb(jsbh char(6)not null primary key,jsxm char(8),zy varchar(30),fy varchar(30),zc varchar(20),zw varchar(20),bz varchar(50))create table skb(jsbh char(6)not null,kch char(3)not null,bj varchar(50)not null,sj varchar(20),dd varchar(50),constraint c2primary key(jsbh,kch,bj))create table tjb(kch char(3)primary key not null,rs1int,rs2int,rs3int,rs4int,rs5int)create table cxb(xb bit not null,xbm char(4)not null primary key)(3)数据库完整性2)视图学生选课情况视图(学号,姓名,课程号,课程名,成绩,学分,总学分,教师)create view xs_xk_viewasselect xsb.XH,XM,kcb.KCH,kcm,CJ,xf,zxf,jsb.jsbh,jsxm from xsb,KCB,CJB,jsb,skbwhere xsb.XH=cjb.XH and kcb.KCH=cjb.KCHand cjb.KCH=skb.kch and skb.jsbh=jsb.jsbhselect*from xs_xk_view3)自定义数据库类型学号,课程号可以考虑用自定义的数据类型。
sp_addtype'xh','char(6)'sP_addtype'kch','char(3)'4)默认值对象Xsb:性别默认为1,总学分默认为0。
Kcb:学生人数默认为40,学分默认为2。
Jsb:zy计算机,fy信息,zc讲师,zw无。
Yhb:mm’123456’Xsb:性别默认为1,alter table xsb add constraint b1DEFAULT 1 for xb总学分默认为0。
alter table xsb add constraint b2DEFAULT 0 for zxf Kcb:学生人数默认为40,alter table kcb add constraint b3DEFAULT 40 for xs学分默认为2。
alter table kcb add constraint b4DEFAULT 2 for xfJsb:zy计算机,alter table jsb add constraint b5DEFAULT'计算机'for zy fy信息,alter table jsb add constraint b6DEFAULT'信息'for fyzc讲师,alter table jsb add constraint b7DEFAULT'讲师'for zc zw无。
alter table jsb add constraint b8DEFAULT'无'for zw Yhb:mm’123456’alter table yhb add constraint b9DEFAULT'123456'for mm 5)规则和check约束Xsb:zxf范围在0-160之间。
Kcb:kkxq范围在1-8之间,xf在1-15之间Cjb:cj范围在0-100之间Xsb:zxf在0-160之间。
alter table xsbadd constraint pk_1check (zxf between 0 and 160)Kcb:kkxq在1-8之间,xf在1-15之间alter table kcbadd constraint pk_2check (kkxq between 1 and 8)alter table kcbadd constraint pk_3check (xf between 1 and 15)Cjb:cj在0-100之间alter table cjbadd constraint pk_4check (cj between 0 and 100)6)参照关系cjb(xh)参照xsb(xh)cjb(kch)参照kcb(kch)yhb(yhbh)参照xsb(xh)和jsb(jsbh) –必须用触发器实现skb(jsbh)参照jsb(jsbh)skb(bj)参照xsb(bj)skb(kch)参照kcb(kch)cjb(xh)—xsb(xh)alter table cjbadd constraint fk_1foreign key (xh)references xsb(xh)cjb(kch)—kcb(kch)alter table cjbadd constraint fk_2foreign key (kch)references kcb(kch)skb(jsbh)—jsb(jsbh)alter table skbadd constraint fk_4foreign key (jsbh)references jsb(jsbh)skb(kch)—kcb(kch)alter table skbadd constraint fk_6foreign key (kch)references kcb(kch)skb(bj)—xsb(bj)--用触发器实现create trigger t1on skbfor insertasbeginif not exists(select*from xsb where bj=(select bj from inserted)) beginprint'插入的班级不存在!'rollback transactionendendyhb(yhbh)—xsb(xh)和jsb(jsbh) --必须用触发器实现alter trigger t2on yhbfor insertasbeginif not exists(select*from xsb where xh=(select yhbh from inserted))beginif not exists(select*from jsb where jsbh=(select yhbh from inserted))beginprint'插入的编号出错!'rollback transactionendendend(4)用户自定义函数(把sql语句贴在下面)(5)用户自定义存储过程1)根据学号查询学生的选课情况(把sql语句贴在下面)CREATE PROCEDURE xhcxxs@xh char(6)asbeginif exists(select*from cjb where xh=@xh)select*from cjb where xh=@xhelseprint'无此学生选课信息'end2)根据课程号查询课程的选修情况(把sql语句贴在下面)CREATE PROCEDURE kchcxxk@kch char(3)asbeginif exists(select*from cjb where kch=@kch)select*from cjb where kch=@kchelseprint'无此课程选课信息'end根据教师编号查询授课情况(把sql语句贴在下面)CREATE PROCEDURE jsbhcxsk@jsbh char(6)asbeginif exists(select*from skb where jsbh=@jsbh)select*from skb where jsbh=@jsbhelseprint'无此教师授课信息'end3)根据班级查询该班级的授课情况(把sql语句贴在下面)CREATE PROCEDURE bjcxsk@bj varchar(50)asbeginif exists(select*from skb where bj=@bj)select*from skb where bj=@bjelseprint'无此班级授课信息'end4)根据课程号号查看授课情况(把sql语句贴在下面)CREATE PROCEDURE kchcxsk@kch char(3)asbeginif exists(select*from skb where kch=@kch)select*from skb where kch=@kchelseprint'无此课程授课信息'end5)课程成绩分布统计。