排课系统数据库报告

更新时间:2023-05-27 21:37:02 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

- 数据库课程设计

题目某中学排课管理系统

专业班级

姓名

学号

完成日期2014-11-24

- .

- 总结资料-

-

目录

一、需求分析 (3)

1.1数据字典 (3)

1.2全系统的数据项 (4)

1.3数据流图 (4)

二、概念结构设计 (5)

2.1E-R图 (5)

2.2系统说明书 (6)

三、逻辑结构设计 (16)

3.1关系模型 (16)

3.2参照完整性约束条件 (16)

3.3系统结构图 (17)

四、数据库实施 (17)

4.1关系模式 (17)

4.2程序编码(C#语言) (22)

五、课程设计的感想和心得体会 (28)

- .

- 总结资料-

-

一、需求分析

学生隶属班级,班级按照课程表上课,课程由老师教授,这些都要有管理人员来管理。总结出如下需求信息:

1)一个班级有多个学生;

2)一个学生有多门课,一门课对应多个学生;

3)一个教师可以教授多门课,一门课可以由多个教师来教授;

4)一个班级对应一班级课程表,一个教师也对应一教师课程表;

5)一个教师可以教授多个班级;

经过对上述系统功能的分析和需求总结,设计总结如下:

1.1数据字典

- .

- 总结资料-

-

1.2全系统的数据项

数据项:

1)学生信息:学生ID、、性别、出生日期、所属班级。

2)班级信息:班级ID、所属年级。

3)教师信息:教师ID、、性别、年龄。

4)课程信息:课程ID、课程名称、教师ID。

5)课程表信息:星期、第一节、第二节、第三节、第四节、第五节、

第六节、第七节、第八节、班级ID。

1.3数据流图

- .

- 总结资料-

-

信息文件

二、概念结构设计

2.1E-R图

2)班级实体E-R图

3)教师实体E-R图

- .

- 总结资料-

-

4)课程实体E-R图

5)课程表实体E-R图

6)全局E-R图

- .

- 总结资料-

-

2.2系统说明书

1)系统要求

某中学的排课管理系统

●实现班级、课程等基本信息的管理;

●实现学生、教师信息的管理;

●实现班级课程及课程的任课教师和排课管理;

●创建存储过程检测指定教师、指定节次是否有课;

●创建存储过程生成指定班级的课程表;

●创建存储过程生成指定老师的课程表;

●建立数据库相关表之间的参照完整性约束。

2)方案和概图

a)设计方案

- .

- 总结资料-

-

b)系统概图

用户登录界面

- .

- 总结资料-

-

- . - 总结资料-

错误提示界面

排课系统主界面

教师信息主界面

-

教师信息查询

报错

- .

- 总结资料-

-

学生信息查询主界面

学生信息查询

- .

- 总结资料-

-

报错

课程信息查询主界面

- .

- 总结资料-

-

课程信息查询

- .

- 总结资料-

-

- . - 总结资料- 班级信息查询

报错 课表信息查询

班级课程表

-

教师课程表查询

学生课程表查询

- .

- 总结资料-

-

三、逻辑结构设计

3.1关系模型

1)学生(学生ID,,性别,出生日期,班级ID)

主键:学生ID 外键:班级ID

2)班级(班级ID,班级名称)

主键:班级ID

3)教师(教师ID,,性别,年龄,)

主键:教师ID

4)课程(课程ID,课程名称,教师ID)

主键:课程名称外键:教师ID

5)课程表1(星期,第一节,第二节,第三节,第四节,第五节,第六节,第七节,第八节)

主键:星期外键:第一节,第二节,第三节,第四

节,第五节,第六节,第七节,第八节

6)课程表2(星期,第一节,第二节,第三节,第四节,第五节,第六节,第七节,第八节,课程名称)

主键:星期外键:第一节,第二节,第三节,第四

节,第五节,第六节,第七节,第八节

3.2参照完整性约束条件

学生——班级学生.班级ID=班级.班级ID

教师——课程教师.课程ID=课程.课程ID

课程表——班级课程表.班级ID=班级.班级ID

课程表——教师课程表.教师ID=教师.教师ID

- .

- 总结资料-

- 3.3系统结构图

四、数据库实施

4.1关系模式

1)class表

CREATE TABLE [dbo].[class](

[classID] [int] NOT NULL,

- .

- 总结资料-

-

[classname] [nchar](20) NOT NULL,

CONSTRAINT [PK_class] PRIMARY KEY CLUSTERED

(

[classID] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

2)course表

CREATE TABLE [dbo].[course](

[courseID] [int] NOT NULL,

[coursename] [nchar](20) NOT NULL,

[teacherID] [int] NULL,

CONSTRAINT [PK_course] PRIMARY KEY CLUSTERED

(

[coursename] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

ALTER TABLE [dbo].[course] WITH CHECK ADD CONSTRAINT [FK_course_teacher1] FOREIGN KEY([teacherID])

REFERENCES [dbo].[teacher] ([teacherID])

ALTER TABLE [dbo].[course] CHECK CONSTRAINT [FK_course_teacher1]

3)student表

CREATE TABLE [dbo].[student](

[studentID] [int] NOT NULL,

[name] [nchar](10) NOT NULL,

[sex] [nchar](2) NULL,

[birthday] [datetime] NULL,

[classID] [int] NULL,

CONSTRAINT [PK_student] PRIMARY KEY CLUSTERED

(

[studentID] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

- .

- 总结资料-

-

ALTER TABLE [dbo].[student] WITH CHECK ADD CONSTRAINT [FK_student_class] FOREIGN KEY([classID])

REFERENCES [dbo].[class] ([classID])

ALTER TABLE [dbo].[student] CHECK CONSTRAINT [FK_student_class]

4)teacher表

CREATE TABLE [dbo].[teacher](

[teacherID] [int] NOT NULL,

[name] [nchar](10) NULL,

[sex] [nchar](2) NULL,

[age] [int] NULL,

CONSTRAINT [PK_teacher] PRIMARY KEY CLUSTERED

(

[teacherID] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

5)courselist1表

CREATE TABLE [dbo].[courselist1](

[第一节] [nchar](20) NULL,

[第二节] [nchar](20) NULL,

[第三节] [nchar](20) NULL,

[第四节] [nchar](20) NULL,

[第五节] [nchar](20) NULL,

[第六节] [nchar](20) NULL,

[第七节] [nchar](20) NULL,

[第八节] [nchar](20) NULL,

[星期] [nchar](20) NULL

) ON [PRIMARY]

ALTER TABLE [dbo].[courselist1] WITH CHECK ADD CONSTRAINT

[FK_courselist1_course] FOREIGN KEY([第一节])

REFERENCES [dbo].[course] ([coursename])

ALTER TABLE [dbo].[courselist1] CHECK CONSTRAINT [FK_courselist1_course] ALTER TABLE [dbo].[courselist1] WITH CHECK ADD CONSTRAINT

[FK_courselist1_course1] FOREIGN KEY([第二节])

REFERENCES [dbo].[course] ([coursename])

- .

- 总结资料-

-

ALTER TABLE [dbo].[courselist1] CHECK CONSTRAINT [FK_courselist1_course1] ALTER TABLE [dbo].[courselist1] WITH CHECK ADD CONSTRAINT

[FK_courselist1_course2] FOREIGN KEY([第三节])

REFERENCES [dbo].[course] ([coursename])

ALTER TABLE [dbo].[courselist1] CHECK CONSTRAINT [FK_courselist1_course2] ALTER TABLE [dbo].[courselist1] WITH CHECK ADD CONSTRAINT

[FK_courselist1_course3] FOREIGN KEY([第四节])

REFERENCES [dbo].[course] ([coursename])

ALTER TABLE [dbo].[courselist1] CHECK CONSTRAINT [FK_courselist1_course3] ALTER TABLE [dbo].[courselist1] WITH CHECK ADD CONSTRAINT

[FK_courselist1_course4] FOREIGN KEY([第五节])

REFERENCES [dbo].[course] ([coursename])

ALTER TABLE [dbo].[courselist1] CHECK CONSTRAINT [FK_courselist1_course4] ALTER TABLE [dbo].[courselist1] WITH CHECK ADD CONSTRAINT

[FK_courselist1_course5] FOREIGN KEY([第六节])

REFERENCES [dbo].[course] ([coursename])

ALTER TABLE [dbo].[courselist1] CHECK CONSTRAINT [FK_courselist1_course5] ALTER TABLE [dbo].[courselist1] WITH CHECK ADD CONSTRAINT

[FK_courselist1_course6] FOREIGN KEY([第七节])

REFERENCES [dbo].[course] ([coursename])

ALTER TABLE [dbo].[courselist1] CHECK CONSTRAINT [FK_courselist1_course6] ALTER TABLE [dbo].[courselist1] WITH CHECK ADD CONSTRAINT

[FK_courselist1_course7] FOREIGN KEY([第八节])

REFERENCES [dbo].[course] ([coursename])

ALTER TABLE [dbo].[courselist1] CHECK CONSTRAINT [FK_courselist1_course7] 6)courselist2表

CREATE TABLE [dbo].[courselist2](

[第一节] [nchar](20) NULL,

[第二节] [nchar](20) NULL,

[第三节] [nchar](20) NULL,

[第四节] [nchar](20) NULL,

[第五节] [nchar](20) NULL,

[第六节] [nchar](20) NULL,

[第七节] [nchar](20) NULL,

[第八节] [nchar](20) NULL,

- .

- 总结资料-

-

[星期] [nchar](20) NULL

) ON [PRIMARY]

ALTER TABLE [dbo].[courselist2] WITH CHECK ADD CONSTRAINT

[FK_courselist2_course] FOREIGN KEY([第一节])

REFERENCES [dbo].[course] ([coursename])

ALTER TABLE [dbo].[courselist2] CHECK CONSTRAINT [FK_courselist2_course] ALTER TABLE [dbo].[courselist2] WITH CHECK ADD CONSTRAINT

[FK_courselist2_course1] FOREIGN KEY([第二节])

REFERENCES [dbo].[course] ([coursename])

ALTER TABLE [dbo].[courselist2] CHECK CONSTRAINT [FK_courselist2_course1] ALTER TABLE [dbo].[courselist2] WITH CHECK ADD CONSTRAINT

[FK_courselist2_course2] FOREIGN KEY([第三节])

REFERENCES [dbo].[course] ([coursename])

ALTER TABLE [dbo].[courselist2] CHECK CONSTRAINT [FK_courselist2_course2] ALTER TABLE [dbo].[courselist2] WITH CHECK ADD CONSTRAINT

[FK_courselist2_course3] FOREIGN KEY([第四节])

REFERENCES [dbo].[course] ([coursename])

ALTER TABLE [dbo].[courselist2] CHECK CONSTRAINT [FK_courselist2_course3] ALTER TABLE [dbo].[courselist2] WITH CHECK ADD CONSTRAINT

[FK_courselist2_course4] FOREIGN KEY([第五节])

REFERENCES [dbo].[course] ([coursename])

ALTER TABLE [dbo].[courselist2] CHECK CONSTRAINT [FK_courselist2_course4] ALTER TABLE [dbo].[courselist2] WITH CHECK ADD CONSTRAINT

[FK_courselist2_course5] FOREIGN KEY([第六节])

REFERENCES [dbo].[course] ([coursename])

ALTER TABLE [dbo].[courselist2] CHECK CONSTRAINT [FK_courselist2_course5] ALTER TABLE [dbo].[courselist2] WITH CHECK ADD CONSTRAINT

[FK_courselist2_course6] FOREIGN KEY([第七节])

REFERENCES [dbo].[course] ([coursename])

ALTER TABLE [dbo].[courselist2] CHECK CONSTRAINT [FK_courselist2_course6] ALTER TABLE [dbo].[courselist2] WITH CHECK ADD CONSTRAINT

[FK_courselist2_course7] FOREIGN KEY([第八节])

REFERENCES [dbo].[course] ([coursename])

ALTER TABLE [dbo].[courselist2] CHECK CONSTRAINT [FK_courselist2_course7] 7)用户user表

- .

- 总结资料-

本文来源:https://www.bwwdw.com/article/b1a4.html

Top