当前位置:首页 > 数据库实验报告
数据库实验报告
组长:__ ____ 组员:_____ 班级:_ _______
指导教师:______ _______
组长: 主要任务:
1. 分析题意,画出E-R图,将E-R图转换为关系模式并进行模式优化。 2. SQL Server 2008环境下编写SQL代码,创建视图、触发器、存储过程和游标。 组员: 主要任务:
1. 根据优化后的关系模式创建基本表,并填充数据。2. 参与优化模式讨论。 3. 撰写实验报告。
一.题目:设计学生管理系统
需求语义:
今要建立关于系、学生、班级、学会等诸信息的一个关系数据库。一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。一个系的学生住在同一宿舍区。每个学生可参加若干学会,每个学会有若干学生。学生参加某学会有一个入会年份。描述各个实体的属性(加下划线者为主码)如下:
学生:学号、姓名、年龄、系名、班号、宿舍区。 班级:班号、专业名、入校年份、系名、人数。 系:系号、系名、系办公室地点、人数。 学会:学会号、学会名、成立年份、地点。
要完成的任务:
1. 画出E-R图。
2. 把E-R图转为关系模式,并优化。
3. 根据关系模式创建数据库。表名和属性名用英文,属性的数据类型根据上面的描述自己定义。
4. 创建一个视图,能显示每个学会的学会名,学生数(实际不存在,也不能增加)。
5. 创建一个触发器,能根据每个班的学生变动情况自动增减班级表和系表的人数字段的值。
6. 创建一个存储过程,实现如下功能:给定一个班的旧班号和新班号,把所有相关表中此班的旧班号改为新班号,并返回此班的人数(使用输出参数)。
7. 编写一段脚本,使用游标完成如下功能:确定系表中人数字段的值与实际学生数是否相符。如果不相符,把人数字段的值改为实际数,并在窗口打印此系的系号、系名、原人数、实际人数。
二.概念结构设计 原始E-R图:
uno uname uyear uplace stuunion joinyear m sjoin sclno n sage student sname sdor p sdname sno cltotal q belong 1 clyear class clmjname 1 belong clno open mname 1 cldname 1 major n establish dno dname 1 1 1 dormitory dorplace dept live dwkplace dtotal
共分享92篇相关文档