学生信息管理系统数据库实训报告.doc

上传人:b****1 文档编号:236684 上传时间:2022-10-07 格式:DOC 页数:24 大小:638KB
下载 相关 举报
学生信息管理系统数据库实训报告.doc_第1页
第1页 / 共24页
学生信息管理系统数据库实训报告.doc_第2页
第2页 / 共24页
学生信息管理系统数据库实训报告.doc_第3页
第3页 / 共24页
学生信息管理系统数据库实训报告.doc_第4页
第4页 / 共24页
学生信息管理系统数据库实训报告.doc_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

学生信息管理系统数据库实训报告.doc

《学生信息管理系统数据库实训报告.doc》由会员分享,可在线阅读,更多相关《学生信息管理系统数据库实训报告.doc(24页珍藏版)》请在冰豆网上搜索。

学生信息管理系统数据库实训报告.doc

广州**职业技术学院

数据库系统及应用实训报告

设计题目:

学生信息管理系统

学生姓名:

*****

系别:

计算机系

专业:

信息管理

班级:

****信息管理

学号:

*******

指导教师:

*****

2011年12月日

目录

一、概述 3

1.1项目背景 3

1.2课程设计目的 3

1.3题目及要求 3

1.4设计环境 4

二、需求分析 4

三、数据库设计 4

3.1概念模型设计 4

3.2逻辑数据库设计 5

3.3数据库的物理设计 6

四、系统实现的具体功能和创建的各类代码 6

五、实训心得 22

一、概述

1.1项目背景

当今时代是飞速发展的信息时代,在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境.计算机的最大好处在于利用它能够进行信息管理.使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性.尤其对于复杂的信息管理,计算机能够充分发挥它的优越性.

学生信息管理系统提供了强大的学生成绩管理管理功能,方便系统管理员对学生信息的添加,修改,删除,查询,留言等操作,同时一样的方面学生对自己各科成绩查询,学习的交流.

1.2课程设计目的

1.进一步掌握SQLServer2005数据库及其组成。

2.进一步熟悉主要数据库对象的操作。

3.提高应用企业管理器管理SQLServer2005数据库的能力。

4.提高T-SQL语句的编写能力。

5.进一步明确数据库管理的主要功能。

1.3题目及要求

题目:

学生成绩管理系统数据库

要求:

1.充分了解软件设计的全过程。

2.从开始的系统需求分析到最后的代码编写,都要有详细的计划,设计文档应按照课程设计的要求书写。

3.系统中的数据表设计应合理、高效,尽量减少数据冗余。

4.数据库及表要易于维护、方便升级。

必须包括数据库、表、查询、数据录入、删除、更新、约束建立等代码每人提交一个实训报告和可行的运行代码。

1.4设计环境

1)、操作系统:

windowsXP

2)、数据库系统:

MicrosoftSQLServer2000/2005企业版

二、需求分析

1.信息需求

高校学生的成绩管理工作量大、繁杂,人工处理非常困难。

学生成绩管理系统借助于计算机强大的处理能力,大大减轻了管理人员的工作量,并提高了处理的准确性。

学生成绩管理系统的开发运用,实现了学生成绩管理的自动化,不仅把广大教师从繁重的成绩管理工作中解脱出来、把学校从传统的成绩管理模式中解放出来,而且对学生成绩的判断和整理更合理、更公正,同时也给教师提供了一个准确、清晰、轻松的成绩管理环境。

2.功能需求

能够进行数据库的数据定义、数据操纵、数据控制等处理功能,进行联机处理的相应时间要短。

具体功能应包括:

系统应该提供课程安排数据的插入、删除、更新、查询;成绩的添加、修改、删除、查询,学生及教职工基本信息查询的功能。

3.安全性与完整性要求

三、数据库设计

姓名

3.1概念模型设计

课程信息表表

学生信息表

考试

成绩

家庭住址

学分

课程名

课程号

课程号

学号

成绩

学期

班级

性别

出生日期

学号

选择

姓名

上课

教室表

教室号

上课教师

班级

3.2逻辑数据库设计

设计学生成绩管理数据库,包括课程、学生、成绩三个关系,其关系模式中对每个实体定义的属性如下:

课程信息表

Course:

(课程号,课程名,学分,课程类别)

学生信息表

Student:

(学号,姓名,性别,出生日期,班级,家庭地址)

成绩表

Score:

(学号,课程名,成绩,学期)

教室表

Classroom:

(教室号,班级,上课教师)

3.3数据库的物理设计

1、课程信息表(Course)

列名

数据类型、长度

约束

列名说明

C_no

char(5)

主键

班级编码

C_name

char(10)

非空

班级名

C_credit

Char

(2)

非空

学分

C_type

Char(10)

允许空

课程类别

2、学生信息表(student)

列名(英文名)

列文(中文名)

数据类型

长度

允许空值

说明

S_no

学号

char

11

´

主键

S_name

姓名

char

8

´

S_sex

性别

char

2

Ö

默认值:

(男);约束:

只能填“男”或“女”

S_birth

出生日期

datetime

Ö

默认值:

系统日期

S_address

家庭地址

varchar

30

Ö

S_class

班级

varchar

10

Ö

3.成绩表

列名

数据类型、长度

约束

列名说明

S_no

char(11)

非空、主键

班级号

C_no

varchar(12)

非空、主键

课程号

Semester

Char(8)

非空

学期

grade

decimal(5)

允许空

成绩(等级)

4.教室表

列名

数据类型、长度

约束

列名说明

number

char(8)

主键

教室号

S_class

varchar(10)

非空

班级

teacher

Char(8)

非空

上课教师

四、系统实现的具体功能和创建的各类代码

1,createdatabasestudent

2,createtablestudent(

Snochar(11)notnullPrimarykey,

Snamechar(8)notnull,

Ssexchar

(2)check(S_sex='男'orS_sex='女')DEFAULT'男',

birthdatetimeCHECK(S_birth>='1900'andSbirth<='2100'),

S_classvarchar(10)null,

addrvarchar(30)null

录入方式:

(1)insertstudentvalues('20021001002','张山','男','1988-6-15','信息021','湖北汉口',Null)

(2)

(3)usestudent

ifexists(selectnamefromsysobjectswherename='GetCredit'andtype='p')

dropprocedureGetCredit

go

createprocedureGetCredit

@v_departvarchar(6)

as

select*fromcourse

wherec_credit=@v_depart

execGetCredit'1003c#_w'

go

selectc_creditfromcoursewherec_no='1003c#_w'

3,createtablecourse(

C_novarchar(12)notnull,

C_namevarchar(20)notnull,

C_creditchar

(2)notnull,

C_typechar(10)notnull

4,createtablescore(

snochar(11)notnull,

semesterchar(8)notnull,

c_novarchar(12)notnull,

gradevarchar(5)null

5,altertablestudent

addS_majorchar(20)null

6,updatestudentsetaddr='湖南株洲'wheresname='周天'

7,updatescoresetgrade=75,c_no='1003c#_w'wheresemester='200402'

8,insertstudentvalues('20021001002','张山','男','1988-6-15','信息021','湖北汉口',Null)

insertstudentvalues('20021003014','刘宇','男','1987-8-19','信息021','湖北荆州',Null)

insertstudentvalues('20031001002','张海波','男','1989-8-12','软件031','湖南长沙',Null)

9,updatestudentsetbirth='1986-5-25'

wheresname='曾建桥'

altertablecourse

addprimarykey(c_no)

altertablescore

addprimarykey(sno,c_no)

10,altertablecourse

addforeignkey(c_no)referencesscore(c_no)

altertablestudent

addforeignkey(sno)referencesscore(sno)

11,altertablecourse

adddefault'专业课'forC_type

12,altertablescore

addcheck(gradebetween1and100)

13,selectsname,sno,S_classfromstudent

14,selectsname,2007-datepart(yy,birth)fromstudent

15,select学号=sno,姓名=sname,2007-datepart(yy,birth)年龄fromstudent

16,selectstudent.snoas学号,c_noas课程号,gradeas成绩

fromstudentinnerjoinscore

onstudent.sno=score.sno

wheresemester='200402'andgrade>'80'

17,select姓名=sname,班级=S_class,2007-datepart(yy,birth)年龄fromstudent

where(2007-datepart(yy,birth)between18and22)

18,selectstudent.snoas学号,sname,ssex,birth,s_class,addr,c_noas课程号,gradeas成绩

fromstudentinnerjoinscore

onstudent.sno=score.sno

whereaddr='湖南株洲'oraddr='湖南长沙'

19,insert

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > IT认证

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1