学校管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
北方民族大学
课程设计报告
系(部、中心)计算机科学与工程学院
姓名崔洁学号 20113266 专业软件工程班级软件工程(1)班同组人员
课程名称数据库系统原理
设计题目名称学校管理系统数据库设计说明书
起止时间 2013年5月—2013年6月
成绩
指导教师签名任荣
北方民族大学教务处制
计算机科学与工程学院课程设计报告
目录
1. 系统需求描述 (1)
2. 数据库概念模型设计 (2)
3. 数据库逻辑模型设计 (3)
4. 数据库物理结构设计 (7)
4.1 索引设计 (7)
4.2 物理存储设计 (9)
5. 数据库实现 (9)
5.1 创建数据库的界面或代码 (9)
5.2 数据库关系图 (10)
6. 数据库编程 (10)
6.1 存储过程 (10)
6.2 触发器 (11)
7. 结束语 (11)
参考文献 (12)
1.系统需求描述
学校管理系统开发。系统开发的总的设计目标是实现学校管理的系统化、规范化和自动化,实现对各个系,各专业,班级,老师,学生的统一的管理。本系统主要实现对各个系,各专业,班级,老师,学生的管理,主要功能为对各个系专业的管理,老师的任职,学生课程的选择等。本系统结构分为院系的管理,老师的管理,和学生的管理,课程选择管理。
2.数据库概念模型设计——E-R图、UML类图(可选)
图1学校管理系统E-R图
图2实体及其属性图
3数据库逻辑模型设计3.1关系模型
表1 学校表
表2 系表
表3 教员表
表4 研究生表
表5 专业表
表6 班级表
7 学生表
表
表8 教授表
表9 选课表
表10 课表
3.2使用SQL SERVER2005对象资源管理器创建表(截屏)
图3学校表
图4系表
图5教员表
图6研究生表
图7专业表
图8班级表
图9教授表
3.3编创建表写SQL程序
CREATE TABLE Student
(Sno CHAR(10)PRIMARY KEY,
Sname CHAR(10)UNIQUE,
ID CHAR(30)UNIQUE,
班级代码CHAR(10))
CREATE TABLE COURSE
(cno char(10)primary key
)
CREATE TABLE SC
(Cno CHAR(10),
Sno CHAR(10),
Gread SMALLINT,
PRIMARY KEY(Sno,Cno),
FOREIGN KEY(Sno)REFERENCES Student(Sno),
FOREIGN KEY(Cno)REFERENCES Course(Cno)
)
4.数据库物理结构设计
4.1索引设计
4.1.1使用对象资源管理器创建索引(截屏)
图10创建索引
4.1.2编写SQL程序创建索引
CREATE UNIQUE INDEX姓名ON学生表
CREATE UNIQUE INDEX成绩ON选课表
4.2 物理存储设计
图11物理存储5.数据库实现
5.1创建数据库的界面或代码
CREATE TABLE Student
(Sno CHAR(10)PRIMARY KEY,
Sname CHAR(10)UNIQUE,
ID CHAR(30)UNIQUE,
班级代码CHAR(10))
CREATE TABLE COURSE
(cno char(10)primary key
)
CREATE TABLE SC
(Cno CHAR(10),
Sno CHAR(10),
Gread SMALLINT,
PRIMARY KEY(Sno,Cno),
FOREIGN KEY(Sno)REFERENCES Student(Sno), FOREIGN KEY(Cno)REFERENCES Course(Cno)
)
5.2 数据库关系图
图12数据库关系图6.数据库编程
6.1 存储过程
6.1.1创建带参数的存储过程
create procedure proc4 @班级代码varchar(50)
as
select*
from学生表where班级代码=@班级代码
6.1.2执行存储过程
exec proc4'101002'
6.2 触发器
6.2.1创建触发器
CREATE TRIGGER TRI1
ON学生表for update
as
if update(身份证号)
raiserror('身份证号列不能修改!',16,20)
6.2.2激活触发器(界面截图)
图13激活触发器
7.结束语
通过这次课程设计,我对数据库又有了更近一步的认识。在这次课程设计中,我对数据库知识有了进一步的了解,自己的理论知识和动手实践能力