研究生招生管理系统数据库设计Word格式文档下载.docx
《研究生招生管理系统数据库设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《研究生招生管理系统数据库设计Word格式文档下载.docx(15页珍藏版)》请在冰豆网上搜索。
①、标示实体集:
四个关系:
学校,考生,成绩,专业
②、标示联系集:
学校和专业:
一个学校由多个专业组成
存在“归属”的关系:
N:
1
考生和专业:
一个专业可以录取多个考生
存在“录取”的关系:
1:
N
考生和成绩:
一个考生拥有一份成绩单
存在“拥有”的关系:
1:
③、标示属性集:
学校(院校编号,学校名称)
成绩(成绩编号,政治,英语,数学,专业科目,总成绩)
考生(考生编号,姓名,性别,年龄,成绩编号,专业编号)
专业(专业编号,专业名称,录取分数线,院校编号)
2.2画出E-R图
学校信息图如下:
图2-2-1学校实体集的E-R图
成绩信息图如下:
图2-2-2成绩实体集E-R图
考生信息图如下:
图2-2-3考生实体集E-R图
专业信息图如下:
图2-2-4专业实体集E-R
2.3研究生招生管理系统总E-R图
根据上面对实体联系的分析,可以画出E-R图如下:
图2-2-5研究生招生管理系统总E-R图
三、数据库逻辑设计
逻辑结构是独立于任何一种数据模型的信息结构。
逻辑结构的任务是把概念结构设计阶段设计好的基本E-R图转化为宜选用的DBMS所支持的数据模型相符合的逻辑结构,并对其进行优化。
E-R图向关系模型转化要解决的问题是如何将实体型和实体间的联系转化为关系模式,如何确定这些关系模式的属性和码。
设计学生成绩管理数据库,包括学校、成绩、考生、专业四个关系,其关系模式中对每个实体定义的属性如下:
学校信息表
学校(院校编号,学校名称)
成绩信息表
成绩(成绩编号,政治,英语,数学,专业科目,总成绩)
考生信息表
考生(考生编号,姓名,性别,年龄,成绩编号,专业编号)
专业表
专业(专业编号,专业名称,录取分数线,院校编号)
设计出E-R图后,可将E-R图转换为数据库模式。
本系统建立的数据库为“yy”,运行本系统时在库中所建立的表分别介绍如下:
3.1学校信息表(School)
字段名
别名
数据类型
字段限制
院校编码
sid
number(10)
Primarykey
学习名称
sname
varchar2(10)
Notnull
3.2成绩信息表(Grade)
字段权限
成绩编号
gid
政治
politics
英语
english
数学
math
专业科目
procourse
总成绩
allgrade
3.3考生信息表(Examinee)
属性
考生编号
eid
姓名
ename
性别
esex
char
(2)
年龄
esage
number
(2)
foreignkey
专业编号
proid
3.4专业表(Profession)
专业名称
proname
录取分数线
scoreline
院校编号
四、建表
4.1创建数据库
先安装数据库oracle,并在安装时输入动态口令并记住。
然后快捷键window+R,并在打开出输入cmd进入oracle操作界面
然后输入sql回车
system/动态口令,已经登陆进去,
sqlplussystem/yyassysdba
createusera007identifiedbya007;
grantconnect,resourcetoa007;
conna007/a007;
4.2创建数据表
一个完整的数据库不可缺少的就是数据表,若干个数据表的集合成一个数据库。
数据表主要用来存放一定格式的记录,数据表中的行被称为记录,列被称为字段。
创建数据表的过程其实就是定义字段的过程。
在此研究生招生管理系统中需要创建四个表,即学校信息表、成绩信息表、考生信息表和专业表。
创建数据库后,为yy数据库添加数据表,步骤如下。
新建查询窗口
在查询窗口中键入下列SQL语句
createtableschool(
sidnumber(10)primarykey,
snamevarchar2(10)
);
执行上述SQL语句即可创建学校信息表相关表格
Createtablegrade(
gidnumber(10)primarykey,
politicsnumber(10)check(politics>
0andpolitics<
100),
englishnumber(10)check(english>
0andenglish<
mathnumber(10)check(math>
0andmath<
150),
procoursenumber(10)check(procourse>
0andprocourse<
allgradenumber(10)
执行上述SQL语句即可创建成绩信息表相关表格
createtableexaminee(
eidnumber(10)primarykey,
enamevarchar2(10),
esexchar
(2),
esagenumber
(2),
gidnumber(10),
proidnumber(10),
foreignkey(gid)referencegrade(gid),
foreignkey(proid)referenceprofession(proid)
执行上述SQL语句即可创建考生信息表相关表格
createtableprofession(
proidnumber(10)primarykey,
pronamevarchar2(10),
scorelinenumber(10),
sidnumber(10),
foreignkey(sid)referenceschool(sid)
执行上述SQL语句即可创建专业表相关表格
insertintoschoolvalues(2201,'
清华'
insertintoschoolvalues(2202,'
北大'
insertintoschoolvalues(2203,'
南大'
insertintoschoolvalues(2204,'
昌大'
运行结果为:
insertintoprofessionvalues(1101,'
土木'
300,2202);
insertintoprofessionvalues(1102,'
软件'
310,2201);
insertintoprofessionvalues(1103,'
机电'
320,2204);
insertintoprofessionvalues(1104,'
会计'
315,2203);
insertintogradevalues(3301,55,60,100,90,305);
insertintogradevalues(3302,60,60,90,80,290);
insertintogradevalues(3303,70,85,80,90,325);
insertintogradevalues(3304,70,50,110,100,330);
运行结果为;
insertintoexamineevalues(1,'
小明'
'
男'
22,3301,1101);
insertintoexamineevalues(2,'
小李'
23,3303,1101);
insertintoexamineevalues(3,'
小花'
女'
23,3302,1102);
insertintoexamineevalues(4,'
小白'
22,3304,1104);
程序运行结果如下:
五、数据库的运行和维护
5.1定义
基本表的创建、修改及删除;
5.1.1基本表的创建
5.1.2基本表的删除
Dropexaminee;
5.2数据操作
5.2.1单表查询
查询考生编