数据库设计说明书

一、找实体(找数据库表)

商品->商品表

分类->分类表

商品评论->评论表

用户->用户表

->用户详情表

订单->订单表

->订单详情表

广告->广告表

管理员->管理员表

二、找属性(找表中的字段)

a)商品->商品编号,分类编号,商品名称,商品公司,商品描述,商品价格,商品图片,商品状态,商品库存量,商品点击量,商品销售量,商品添加时间。

b)分类->分类编号,分类名称,父类编号,路径

c)商品评论->评论编号,评论标题,评论内容,评论添加时间,评论人编号,商品编号,回复。

d)用户->用户编号,用户名,用户密码,允许登录,添加时间。

e)用户详情->用户详情编号,用户编号,性别,年龄,电话,地址,头像,邮箱。 f)订单->订单编号,用户编号,联系人电话,联系人名称,地址,总价,订单状态,订单

->订单详情表

广告->广告表

管理员->管理员表

a) 商品->商品编号,商品名称,商品价格,简介,图片,规格,属性等....\

b) 分类->分类编号,分类名称,分类描述,分类图片

c) 活动->活动编号,活动名称,活动内容,活动开始时间,活动结束时间,参与商家....

d) 订单->订单编号,下单人,收货人订单状态,商品信息,订单总额,优惠价格,是否包装,

运费,是否使用红包,是否打着......

.........

三 找关系.(找外键)

商品分类-->商品 1:N

用户信息表-->用户详情表 1:1

N:N一般不用 一般多表之间的关系.

四 画E-R (实体-关系)图

数据库设计说明书

`

数据库设计说明书

五、数据字典

表A

数据库设计说明书

4.n 表N

数据库设计说明书

六、创建表语句

用户表 USER

CREATE TABLE `test` (

`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `name` VARCHAR( 20 ) NOT NULL

) ENGINE = MYISAM ;

商品表 goods

CREATE TABLE `sdasd` (

`id` VARCHAR( 120 ) NOT NULL , `name` VARCHAR( 12 ) NOT NULL ) ENGINE = MYISAM ;

 

第二篇:数据库综合设计说明书

编号:

数据库综合设计说明书 题 目:

系 别:

专 业:

学生姓名:

学 号:

指导教师: 学生信息管理系统 计算机科学与工程学院 软 件 工 程 20xx年 5月 日

1

摘 要

目前,信息对人类社会的发展起着重要的作用,如何去获得并对信息进行有效管理的技术、方法和手段成为了研究的重点,如果学校档案的管理水平还停留在纸介质的基础上,这样的机智已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被以计算机为基础的信息管理所取代?信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生活的各个领域?信息管理系统因其在信息管理上的高效性和便捷性,在各个单位各个企业以及各个领域得到了广泛应用,并受到重视。学校学生信息管理是学校教务管理中的一个极为重要的环节,它是整个学校管理的核心和基础?为了适应现代社会人们高度强烈的时间观念,学籍管理系统软件将会为教学办公室带来极大的方便?随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长?面对庞大的信息量,就需要有学生信息管理系统来提高学生管理工作的效率?通过这样的系统,可以做到信息的规范管理,科学统计和快速的查询,从而减少管理方面的工作量?毋庸置疑,切实有效地把计算机管理引入学校教务管理中,对于促进学校管理制度,提高学校教学质量与办学水平有着显著意义?

基于以上原因,充分利用现有计算机普及化的这个社会环境和学生管理的实际情况,我决定开发《学生信息管理系统》?

本设计是在校学生管理信息系统,主要是学生基本情况管理?成绩管理?课程管理,以及数据查询和各种报表统计?

关键词:系统;学生信息;管理

2

目 录

引言 ………………………………………………………………………4 1系统的目标及任务……………………………………4

1.1系统建设目标…………………………………………………4

1.2 系统的主要任务…………………………………………………………4

1.3 系统性能指标……………………………………………………………… 4 2 系统需求分析 ……………………………………………………………… 4

系统的详细需求…………………………………………………………4

2.1.1功能需求………………………………………………………………5

2.1.2使用范围……………………………………………………………5

2.1.3业务流程……………………………………………………………5

2.1.4用户界面……………………………………………………………6

2.1.5输出要求……………………………………………………………7

2.1.6故障处理……………………………………………………………7

2.2使用环境……………………………………………………………8

2.2.1网络环境……………………………………………………………8

2.2.2硬件环境……………………………………………………………8

2.2.3软件环境……………………………………………………………8

2.3可行性分析……………………………………………………………8

2.3.1技术可行性……………………………………………………………8

2.3.2经济可行性……………………………………………………………8

2.3.3影响系统开发的因素……………………………………………………8 3 软件开发过程 ……………………………………………………………… 9

1系统设计…………………………………………………………9

3.1.1数据库设计……………………………………………………………9

3.1.2系统功能设计……………………………………………………………9

3.1.3系统安全设计……………………………………………………………9 4软件测试过程 ……………………………………………………………… 9

1测试环境…………………………………………………………9

2功能测试…………………………………………………………10

3性能测试…………………………………………………………10 5 结论…………………………………………………………………10 参考文献及附录 ………………………………………………………………12

3

引言

随着高等教育的逐步普及和高校扩招,高校在校生人数快速增加,学生基本信息的管理发生了很大的变化。对于一个有几千甚至上万的学校来说,对于学生的管理如果仍然采用手工管理,是难于满足学校管理的要求。因此,学生信息管理系统的开发是必不可少的,它能够使原本比较烦琐的工作变得相对而言比较简单。本设计根据当前高校的需求,让学生结合自己大学所学的知识,分析和解决高校面临的实际问题。同时通过本设计题目,学生可以把大学里所学的知识得以实际应用,使自己对一个软件系统的开发步骤和数据库连接有一定的了解,还可以通过开发这个软件系统对现代高校的管理制度有所了解。

本课程设计的设计目标就为学校学籍管理提供快捷方法,使用户能够便捷查询学生档案,使学校管理自动化。开发此学生信息管理系统软件,以供教学人员及操作者进行学籍管理,方便操作者随时添加、查询、修改等。为了我们提高软件开发的能力,学习编程语言的技巧和掌握对后台数据库的控制,提高工作设计思想,通过本次的设计,我们与辅助老师还有其他同学交流,能从中学习知识吸取经验,在技术和软件思想上同时得到锻炼和提高,从而使总体水平升到一个新的高度。

1 系统的目标及任务

本系统主要实现包括学生用户操作,教师用户操作两个部分。其功能主要有: 1、学生用户:自身信息的查询,基本信息录入。

2、教师用户:学生基本信息查询,学生成绩查询,学生选课查询,统计信息查询,录入学生成绩,本人信息查询。

学生信息管理系统的开发主要包括后台数据库的建立和维护以及前端应用程序的开发两方面。对于前者要求建立起数据一致性和完整性强和安全性好的库。对于后者则要求应用程序功能完备,易于使用。

2 系统需求分析

(1)系统的详细需求

功能需求:

1、学生信息管理功能

提供给教师用户进行对自己学生的信息更新、删除。

添加学生。当新生入学或者有转校生时,可以单个添加学生信息进入数据库中。

4

删除学生。当学生毕业后或者有学生转校时可以将学生信息移除。

2、学生成绩管理功能

成绩查询:在期末学生用户可以查询自己的所有课程的成绩。

分数录入:教师用户可以在学期末将学生成绩录入。

统计报表:教师用户可以在数据库中按课号查询其最高分、最低分的学生,以及可以查询该门课程平均分。

3 课程信息管理功能

1、课表查询:学生可以查询自己的课表。

2、选课情况查询:教师可以查询自己所开课程的选课情况,包括人数和选了本课程的学生信息。

使用范围:

限于本学校学生和教师使用。

业务流程:

数据流图如下

数据库综合设计说明书

数据库综合设计说明书

数据库综合设计说明书

5

数据库综合设计说明书

系统用户界面如下:

数据库综合设计说明书

数据库综合设计说明书

6

数据库综合设计说明书

数据库综合设计说明书

7

数据库综合设计说明书

(2)使用环境

网络环境:对网络无要求。 硬件环境:最低硬件要求如下

奔腾Ⅱ300MHz或更高;最低奔腾Ⅱ233MHz;

内存:128MB或更高,最低64MB(可能会影响性能和某些功能);

硬盘空间:1.5GB可用硬盘空间。

软件环境:装有SQL server或者Access

(3)可行性分析

在当前学校规模不断扩大的形势下,学生基本信息管理系统的开发是符合现实需要的;其次,计算机硬件设施的不断发展,所以可行性分析包括如下:

一、经济可行性

由于开发此学生信息系统系统所需的硬件(计算机及相关硬件)和软件环境价格低廉,在市场上都容易购买到,所需技术人员为数不多,如果此系统投入使用,可以减少高校管理人员各方面的工作量,同时方便管理,开发此系统成本低,经济效益高,因此系统经济可行应积极开发。

二、技术可行性

由于开发此学生信息管理系统需要的硬件环境有Windows 98以上即可,支持的软件有开发工具Delphi7,所需用的操作人员熟练使用delphi7、SQL server以及对SQL语句的熟练运用,具有一定的数据库开发功底及编程能力,现有开发工具Delphi7支持强大的数据库开发,加上开发人员的过硬技术从功能和性能上完全都满足系统的要求,因此从技术方面讲开发此管理系统是可行的。

三、操作可行性

数据库综合设计说明书

此学生信息管理系统具体良好的界面,使用方便,操作简单易于被用户接受,用户只需可以熟练操作计算机,和对此系统使用做简单的了解即可方便使用,而且使用此系统可以减少大量录入工作,大大降低以前学籍管理的烦琐程度,从使用方面此系统的开发是可行的。

3 软件开发过程

(1)系统设计

E-R图如下

8

系统安全设计:

系统中存贮的用户口令、备份口令、数据库连接信息等重要数据,都经过安全加密,数据库的访问权限都是有限定的,不同的数据库管理人员有不同的角色。

(2)软件设计

Delphi是一门真正面向对象的开发工具,并且完全的可视化,由于它使用了本地编译器直接生成技术,因此使程序的执行性能远远高出其他产品生成的程序。Pascal语言的严谨加上可视化的优势和强大的数据库功能使Delphi素有VB杀手之称。 Delphi对关系型数据库提供全面的支持。而关系型数据库将数据组织成相应的表,表中的行对应着相应的每一个记录,表中的列对应着数据库的字段,通过使用一些简单的操作就能实现对数据的控制和管理。可以用Delphi7完全界面操作化添加所需的组件。然后通过Delphi7进行属性设定与用object pascal语言代码控制相结合,就可达到我们想要的功能。

4 软件测试过程

(1)测试环境

Windows XP操作系统、Windows7操作系统 、数据库数据正常

(2)功能测试

模拟现场测试:分别模拟教师、学生身份。

(3)性能测试

测试了其可维护性、安全性。

5 结论

本次综合设计基本上完成了一个学生信息管理系统应有的基本功能,由于时间比较仓促,一些功能还需加于完善和扩展。然而通过本次设计,进一步加强了对数据库原理的基本理论的了解和数据库的实际应用技术使用能力。学会如何去一步一步开发数据库系统,怎么做系统需求分析,如何通过数据流图,流程图来规划系统。如何通过规范的方法进行规范化的系统设计。掌握了数据库开发工具的使用以及综合编程调试的能力,为以后能进行数据库系统设计、开发与维护打下良好的基础。

6 参考文献

《百例课堂.DELPHI.7编程入门篇》,《编程之道delphi7》,

《Delphi 中的Object Pascal 语言参考指南》

系统设计的部分关键代码 7 附录

//登陆界面的代码

procedure TForm1.Button1Click(Sender: TObject);

begin

if(edit.Text='zhoujunwei')and(edit1.Text='333') and(ComboBox1.ItemIndex=0)

9

then

Form2.Show

else if (edit.Text='lanlixiang')and(edit1.Text='222') and(ComboBox1.ItemIndex=1) then

Form6.Show

else

showmessage('身份认证错误或越权')

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

close;

end;

//学生信息模块的关键代码

procedure TForm2.Button3Click(Sender: TObject);

begin

if messagedlg('删除后就不能还原,确实要删除吗?',mtinformation,[mbyes,mbno],0)=mryes then

ADOTable1.Delete;

end;

procedure TForm2.Button1Click(Sender: TObject);

begin

if(DBGrid1.DataSource=DataSource1) then

begin

if(Edit1.Text='')or (Edit2.Text='')or (Edit3.Text='')or (Edit3.Text='') or (Edit4.Text='')or (Edit5.Text='')

then

showmessage('请将信息输入完整')

else

ADOTable1.InsertRecord([Edit1.Text,Edit2.Text,Edit3.Text,Edit4.Text,Edit5.Text]); end;

end;

procedure TForm2.Button5Click(Sender: TObject);

begin

ADOTable1.Active:=False;

end;

procedure TForm2.Button2Click(Sender: TObject);

begin

ADOTable1.Delete;

end;

procedure TForm2.N6Click(Sender: TObject);

begin

10

Form4.show;

end;

procedure TForm2.N10Click(Sender: TObject);

begin

Form5.Show;

end;

procedure TForm2.N2Click(Sender: TObject);

begin

ADOTable1.Active:=False;

ADOTable1.TableName:='student';

ADOTable1.Active:=True;

end;

procedure TForm2.Button7Click(Sender: TObject);

begin

ADOTable1.Active:=False;

ADOTable1.TableName:='student';

ADOTable1.Active:=True;

end;

procedure TForm2.Button8Click(Sender: TObject);

begin

ADOTable1.Active:=False;

ADOTable1.TableName:='成绩';

ADOTable1.Active:=True;

end;

procedure TForm2.Button9Click(Sender: TObject);

begin

ADOTable1.Active:=False;

ADOTable1.TableName:='course';

ADOTable1.Active:=True;

end;

procedure TForm2.Button6Click(Sender: TObject);

begin

if(DBGrid1.DataSource=DataSource1) then

begin

if(Edit6.Text='')or (Edit7.Text='')or (Edit8.Text='')or (Edit9.Text='') or (Edit10.Text='')or (Edit11.Text='')or(Edit12.Text='')

then

showmessage('请将信息输入完整')

else

11

ADOTable1.InsertRecord([Edit6.Text,Edit7.Text,Edit8.Text,Edit9.Text,Edit10.Text,Edit11.Text,Edit12.Text]);

end;

end;

procedure TForm2.Button10Click(Sender: TObject);

begin

ADOTable1.Delete;

end;

procedure TForm2.Button4Click(Sender: TObject);

begin

ADOTable1.Insert;

end;

procedure TForm2.Button11Click(Sender: TObject);

begin

ADOTable1.CancelUpdates;

end;

procedure TForm2.N13Click(Sender: TObject);

begin

close;

end;

end.

//成绩查询模块

procedure TForm4.Button1Click(Sender: TObject);

begin

ADOQuery1.Close;

ADOQuery1.SQL.Clear;

if (ComboBox1.ItemIndex=0) then

ADOQuery1.SQL.Add('select * from 成绩 where 学号='''+edit1.Text+'''')

else if(ComboBox1.ItemIndex=1) then

ADOQuery1.SQL.Add('select * from 成绩 where 课号='''+edit1.Text+'''')

else if(ComboBox1.ItemIndex=2) then

ADOQuery1.SQL.Add('select * from 成绩 where 学分='''+edit1.Text+'''')

else showmessage('你的操作不符合查询条件!');

ADOQuery1.open;

end;

//统计模块

procedure TForm5.Button1Click(Sender: TObject);

begin

with ADODataSet1 do begin

12

Close;

if (RadioGroup1.ItemIndex=0) then

CommandText := 'SELECT COUNT(*) AS 选课总人数 FROM 成绩 where 课号='''+edit1.Text+''''

else if(RadioGroup1.ItemIndex=1) then

CommandText := 'SELECT AVG(成绩) AS 平均成绩 FROM 成绩 where 课号='''+edit1.Text+''''

else if(RadioGroup1.ItemIndex=2) then

CommandText := 'SELECT MAX(成绩) AS 最高分 FROM 成绩 where 课号='''+edit1.Text+''''

else if(RadioGroup1.ItemIndex=3) then

CommandText := 'SELECT MIN(成绩) AS 最低分 FROM 成绩 where 课号='''+edit1.Text+''''

else showmessage('你的操作不符合查询条件!');

Open;

end;

end;

procedure TForm5.N4Click(Sender: TObject);

begin

close;

end;

procedure TForm5.N2Click(Sender: TObject);

begin

Form4.show;

end;

end.

//学生查询模块

procedure TForm6.Button1Click(Sender: TObject);

begin

with ADODataSet1 do begin

Close;

if (RadioGroup1.ItemIndex=0) then

CommandText := 'SELECT 学号,课号,成绩 FROM 成绩 where 学号='''+edit1.Text+'''' else if(RadioGroup1.ItemIndex=1) then

CommandText := 'SELECT 学号,课号 FROM 成绩 where 学号='''+edit1.Text+'''' else if(RadioGroup1.ItemIndex=2) then

else showmessage('你的操作不符合查询条件!');

Open;

end;

end;

procedure TForm6.N17Click(Sender: TObject);

begin

close;

end;

end.

13

相关推荐