course数据表,结构如下:
score情况数据表,结构如下:
三概念模型设计。
由需求分析的结果可知,本系统设计的实体包括:
1)学生基本信息:学号,姓名,性别,地址,年龄,专业。
2)课程基本信息: 课程名,课程号,分数,学时,学分。
这些实体间的联系包括:
1)每位学生可以学习多门课程,每门课程可供多位学生学习。
由上述分析可得到系统的e—r图:
四逻辑和物理结构设计。
4.1由系统e—r图转化而得到的关系模式如下:
1)学生(学号,姓名,性别,年龄,地址,系别),其主关键字为学号;
2)课程(课程名,课程号,学时,学分),其中主关键字为课程号;
3)成绩(课程号,学号,分数)其中主关键字为学号和课程号。可以与学生关系模式合并为:学生(学号,姓名,性别,年龄,地址,系别,成绩,课程号)。
4.2 确定关系模型的存取方法。
在将概念模型转换成物理模型之后,我们可以对物理模型进行设计,双击物理模型的关系,可以对该关系的名称、注释等信息进行查询。可对该关系的属性列进行设计,可分别设置其名称、码、数据类型以及主码、是否为空等。在实际设计中最常用的存取方法是索引发,使用索引可以大大减少数据的查询时间,在建立索引时应遵循:
在经常需要搜索的列上建立索引; 在主关键字上建立索引;在经常用于连接的列上建立索引,即在外键上建立索引;在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的等规则。才能充分利用索引的作用避免因索引引起的负面作用。
4.3 确定数据库的存储结构。
确定数据库的存储结构主要指确定数据的存放位置和存储结构,包括确定关系、索引、日志、备份等的存储安排及存储结构,以及确定系统存储参数的配置。因为该成绩管理系统的数据量小,,所以我们只用把数据存储在使用的电脑硬盘上,不用作更多的安排。
1)创建学生基本信息表:
create table student (
学号varchar(11not null,系别varchar(5) not null,姓名varchar(6) not null,性别varchar(2) not null,年龄char(2not null,地址varchar(20) not null,constraint pk_student primary key (学号)
goexecute sp_addextendedproperty 'ms_description',
'学生基本信息描述','user', table', studentsinfo'
go2)创建课程表:
create table course (
cnovarchar(5not null,cnamevarchar(10null,xueshismallintnull,xuefenintnull,constraint pk_course primary key (课程号))
goexecute sp_addextendedproperty 'ms_description',
3)创建学生与课程的成绩表。
create table sc ( snovarchar(11not null,cnovarchar(5not null,chengjivarchar(4not null
constraint pk_sc primary key (学号, 课程号)
go在sc表上创建索引sc_fk与sc2_fk
create index sc_fk on sc (学号 asc)
gocreate index sc2_fk on sc (课程号 asc)
go建立课程号索引。
create index tc_fk on tc (
课程号 asc
go下图显示了学生,课程和成绩三个关系的物理设计其中课程号与学号号分别为关系的主码。
五数据库的实施与维护。
5.1 数据库的实施:
此阶段主要任务包括创建数据库,加载初始数据,数据库试运行,数据库的安全性和完整性控制数据库的备份与恢复,数据库性能的监督分析和改仅,数据库的重组和重构等。首先在数据库中建立一个学生成绩管理系统数据库,然后新建一个数据源。主要**如下:
#include ""
#include ""
#include ""
#ifdef _debug
#define new debug_new
#undef this_file
static char this_file file__;
/ ccourse
implement_dynamic(ccourse, crecordset)
ccourse::ccourse(cdatabase* pdb)
: crecordset(pdb)
//afx_field_init
m_ndefaulttype = snapshot;
cstring ccourse::getdefaultconnect()
return _t("odbc;dsn=")
cstring ccourse::getdefaultsql()
return _t(""
void ccourse::dofieldexchange(cfieldexchange* pfx)
//}afx_field_map
/ ccourse diagnostics
void ccourse::assertvalid() const
crecordset::assertvalid();
void ccourse::dump(cdumpcontext& dc) const
crecordset::dump(dc);}
/ :interface of the cmainframe class
class cmainframe : public cframewnd
protected: /create from serialization only
cmainframe();
declare_dyncreate(cmainframe)
/ attributes
public:
/ operations
public:
/ overrides
// classwizard generated virtual function overrides
//}afx_virtual
/ implementation
public:
virtual ~cmainframe();
protected: /control bar embedded members
//cstatusbar m_wndstatusbar;
//c******* m_wnd*******;
/ generated message map functions
protected:
//}afx_msg
declare_message_map()
/ microsoft visual c++ will insert additional declarations immediately before the previous line.
课程设计 学生成绩管理系统
应用程序综合设计报告。题目 学生成绩管理系统 学生成绩管理系统是学生管理系统的重要组成部分,对学生的德 智 体全面评估有很大的作用,所以学生成绩管理系统应该能够为用户提供方便的查询平台和数据存储功能。传统是使用人工的方式对学生的信息进行存储,对于个人的学生成绩来说,数据的整理和分析就显得很麻烦,不利...
学生成绩管理系统课程设计
一。选题 2 1.1 学生成绩管理系统分析与设计 2 1.2选择该课题原因 3 1.3课题研究的目的和意义 3 1.4课题主要研究内容 3 二。系统规划 3 2.1 需求分析 3 2.2可行性分析 4 2.3课题要达到的目标 5 三。系统分析 5 3.1 系统现状分析 6 3.2 研究的思路和方法 ...
学生成绩管理系统课程设计
面向对象语言程序设计 课程设计报告。设计题目 学生成绩管理系统课程设计 专业数学与应用数学 班级学号0909401 13 姓名童源。指导教师秦姣华。成绩。2010 年 12 月 25 日。目录。一 实验目的3 二 实验要求3 三 程序功能3 1 功能分析说明图3 2 各项功能的说明4 四 程序内容5...