版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学生信息管理系统数据库设计与实现一、 系统需求1、该“学生信息管理系统”是对数据库应用技术的一个样本数据库的实例,其中包括从数据库的概念模型到ER图的绘制,再到数据库模式的建立(即为数据库及其基本表的建立),而后数据的录入(在此从略),最后完成一些简单的关系运算表达式的表达和相关的Select 查询语句的使用。2、系统结构简述:本系统包括三个实体:院系;学生档案;课程;实体之间的关系转换为其他表的有:选修;实体“院系”与“学生档案”之间有一对多的关系,把院系表的主码转放到表“学生档案”中;实体“学生档案”与“课程”之间有多对多的关系,因此独立形成一个表并共同存储“学生档案”与“课程”表的主码和
2、一些自己的属性列;3、该数据库需要进行如下数据处理: 从选修表中查询成绩的函数:输入:学号和课程编号输出:对应的学号和课程编号的分数即成绩;从学生档案表中查询学生基本信息的函数:输入:学号输出:对应的学号的基本信息,即学号,姓名,性别,专业,联系方式,联系地址,院系编号;从学生档案表中删除对应的学生记录:输入:学号输出:删除对应的学生记录,若没有对应的学号则输出“没有该学生!”的提示; 向学生档案表插入数据的函数:输入:学生档案表的基本信息,包括所有属性列;即学号,姓名,性别,专业,联系方式,联系地址,院系编号;级联更新(从院系表到学生档案表、课程表):输入:院系编号,院系名称成绩表上的触发器
3、,当删除某一个学生的成绩时触发:当从学生档案表中删除学生记录时,若该学号的学生记录在选修表中也有的话,则提示二、概念设计(设计E R模型)学生档案选修课程局部E-R模型局部E-R模型所属院系院系局部E-R模型属于课程院系学生档案 表1.实体间的相互联系实体联系实体院系属于课程学生档案选修课程院系所属院学生档案学生档案选修课程分数mnn1课程编号#课程名称所属院系院系n1院系编号#院系名称学号#姓名性别专业联系方式联系地址学时属于 学生信息管理系统的E-R模型三、逻辑设计(转换成关系模型)系统中的实体有:学生档案;课程;院系;关系模式如下:学生档案(学号,姓名,性别,专业,联系方式,联系地址)P
4、K=学号,NOT NULL课程(课程编号,课程名称,学时,院系编号)PK=课程编号,NOT NULLFK=院系编号,参照院系表选修(学号,课程编号,分数)PK=,NOT NULLFK=学号,参照学生档案表FK=课程编号,参照课程表院系(院系编号,院系名称)PK=院系编号,NOT NULL四、物理设计表1 学生档案表结构字段名类型特殊属性学号char(12)Not null姓名char(22)null性别char(2)null专业char(16)Null联系方式char(12)Null联系地址char(40)null院系编号smallintnull表2 院系表结构字段名类型特殊属性院系编号Sma
5、llintNot null院系名称char(16)null表3 课程表结构字段名类型特殊属性课程编号char(10)Not null课程名称char(20)null学时Smallintnull院系编号smallintNull表4 选修表结构字段名类型特殊属性学号char(12)Not null课程编号char(10)Not null分数Numeric(4,1)null 五、SQL源代码1、create database 学生信息管理create table 院系(院系编号 smallint,院系名称 char(16),primary key(院系编号)2、create table 学生档案(学
6、号 char(12),姓名 char(22),性别 char(2)check(性别 in (男,女),专业 char(16),联系方式 char(12),联系地址 char(40),院系编号 smallint,primary key(学号),foreign key(院系编号)references 院系(院系编号)on update cascade)3、create table 课程(课程编号 char(10),课程名称 char(20),学时 smallint,院系编号 smallint,primary key(课程编号),foreign key(院系编号)references 院系(院系编号
7、)on update cascade)4、create table 选修(学号 char(12),课程编号 char(10),分数 numeric(4,1)check(分数=0),primary key(学号,课程编号),foreign key(学号)references 学生档案(学号) on update no action,foreign key(课程编号)references 课程(课程编号) on update no action)5、从选修表中查询成绩的函数if exists(select name from sysobjects where name=成绩查询and type=p
8、)drop procedure 成绩查询gocreate procedure 成绩查询 Sno char(12),Cno char(10)asif exists(select 学号,课程编号 from 选修 where 学号=Sno and 课程编号=Cno)select 学号,课程编号,分数from 选修where 学号=Sno and 课程编号=Cnoelseprint 没有该学号的学生或课程goexecute 成绩查询 08080605227,062320236、从学生档案表中查询学生基本信息的函数if exists(select name from sysobjects where n
9、ame=学生基本信息查询 and type=p)drop procedure 学生基本信息查询gocreate procedure 学生基本信息查询 Sno char(12) asif exists(select 学号 from 学生档案 where 学号=Sno)select *from 学生档案where 学号=Snoelseprint 不存在这样的学生!goexecute 学生基本信息查询 080806052277、从学生档案表中删除对应的学生if exists(select name from sysobjects where name=删除学生记录and type=p)drop pr
10、ocedure 删除学生记录gocreate procedure 删除学生记录 Sno char(12)asif exists(select * from 学生档案 where 学号=Sno)delete from 学生档案where 学号=Snoelseprint 没有该学生!goexecute 删除学生记录 12345678910execute 删除学生记录 090806052278、向学生档案表插入数据的函数if exists(select name from sysobjects where name=向学生档案表输入and type=p)drop procedure 向学生档案表输入
11、gocreate procedure 向学生档案表输入 Sno char(12),Sname char(22),Ssex char(2),Szhuanye char(16),Scontact char(12),Saddress char(40),Dno smallintasinsert into 学生档案 values(Sno,Sname,Ssex,Szhuanye,Scontact,Saddress,Dno)goexecute 向学生档案表输入 09080605227,jack,男,计算机abbbb,1010execute 向学生档案表输入 12345678910,
12、john,男,计算机abcdefg,10109、级联更新(从院系表到学生档案表、课程表)if exists(select name from sysobjects where name=更新院系编号and type=p)drop procedure 更新院系编号gocreate procedure 更新院系编号 Dno smallint,Dname char(16)asupdate 院系set 院系编号=Dnowhere 院系名称=Dnamegoexecute 更新院系编号 1010,计算机科学系 10、成绩表上的触发器,当删除某一个学生的成绩时触发if exists(select name from sysobjects where name=选修表上的触发器and type=tr)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026广东广州市越秀区农林街除四害消毒管理站招聘1人模拟试卷及参考答案详解(培优B卷)
- 2026北京大学未来技术学院招聘劳动合同制人员4人考前冲刺试卷附参考答案详解【综合题】
- 2026广西梧州市人力资源和社会保障局市本级第七批城镇公益性岗位招用31人模拟试卷附答案详解(完整版)
- 2026年广丰区教育系统“归雁计划”高中教师选调工作考前冲刺试卷含答案详解(研优卷)
- 2026湖北黄石市阳新县第二批机关事业单位选调(聘)16人备考题库含答案详解【突破训练】
- 2026年广丰区教育系统“归雁计划”高中教师选调工作考前冲刺密卷附答案详解(轻巧夺冠)
- 2026湖北武汉市第九医院第二批编外聘用制人员招聘23人笔试题库及参考答案详解AB卷
- 2026河南郑州航空港区招聘初中阶段教学辅助人员考前冲刺密卷及参考答案详解(夺分金卷)
- 2026广西农业科学院园艺研究所热带特色果树团队招聘编外人员1人备考题库及参考答案详解【培优】
- 2026广东河源市龙川县教育系统招聘教师98人笔试题库附参考答案详解【综合题】
- 标书制作全流程培训2026版课件
- 2026年生态环境保护培训试题(含答案)
- 2026年电力交易员职业能力水平评价中级题库
- 配送食材供货难点分析及解决方案
- 2025年国企资金管理岗招聘笔试试题及答案
- 四川省水利工程设计概(估)算编制规定2025
- 2026年酒店锅炉房及压力容器安全操作规程
- 消费卡顶账协议书
- 海关AEO培训法律法规培训
- 2026年通信与信息系统考研复试高频面试题包含详细解答
- 重庆重庆市璧山区总工会选用8名工会社会工作者笔试历年参考题库附带答案详解(5卷)
评论
0/150
提交评论