数据库课程设计心得体会范文

数据库课程设计心得体会范文,第1张

通过数据库课程设计的完成,我们从中获得了不少的感慨,通过对所学知识的体会,能够明显感觉到自己比以往进步了不少。以下是由我为大家整理的“数据库课程设计心得体会范文”,仅供参考,欢迎大家阅读。

数据库课程设计心得体会范文(一)

在我看来,数据库课程设计主要的目标是利用课程中学到的数据库知识和技术较好的开发设计出数据库应用系统,去解决各行各业信息化处理的要求。通过这次的课程设计,可以巩固我们对数据库基本原理和基础理论的理解,掌握数据库应用系统设计开发的基本方法,进一步提高我们综合运用所学知识的能力。

当我们这组决定做大学生就业咨询系统时,我们并没有着手写程序。而是大家一起商量这个系统概述、系统目标、系统需求、业务流程分析、数据流程分析和数据词典。当这些都准备好了之后,我们进行模块的分工。每个人都有自己的模块设计,而且写出来的代码要求可以实现相应模块的功能,得到理想的效果。当每个人都把自己的分工做好了,最后会由一个人把这些全部组合搭建在一起。我们使用的是html和php相互嵌套使用,当一个系统做好了之后,我会好好地把程序都看一遍,理会其中的奥秘。

我所负责的是数据库的备份和还原还有一些界面的实现。还记得自己刚接触html的时候,觉得很感兴趣,所以有一段时间几乎到了痴迷的程度。然而php是我刚接触不久的一种编程语言。不过觉得它的功能真的很强大,可以开发出很多大型的系统。但是在做备份和还原的时候,要考虑的东西还是很多的。当我遇到错误的时候,感到很受打击。值得欣慰的是,在同学的帮助和大量参考书的查阅下,我把自己的模块做好了。这就是我收获最大的地方。而且,我明白了遇到困难永不放弃的重要性,我知道了团队合作的重要性,我领悟了只有坚持不懈才会取得胜利。

知识的获得是无止境的,只要你想学,只要你行动,没有什么会难倒我们的。回首这一个多星期的课程设计,我很欣慰。因为我有了动力,有了勇气。谢谢老师对我们的不懈帮助,谢谢学校给了我们这一次实践的机会,也谢谢组员们的关怀。这些美好的回忆美好的东西将永远伴随着我。

数据库课程设计心得体会范文(二)

本次课程设计,使我对《数据结构》这门课程有了更深入理解。《数据结构》是一门实践性较强课程,为了学好这门课程,必须在掌握理论知识同时,加强上机实践。

我课程设计题目是线索二叉树运算。刚开始做这个程序时候,感到完全无从下手,甚至让我觉得完成这次程序设计根本就是不可能,于是开始查阅各种资料以及参考文献,之后便开始着手写程序,写完运行时有很多问题。特别是实现线索二叉树删除运算时很多情况没有考虑周全,经常运行出现错误,但通过同学间帮助最终基本解决问题。

在本课程设计中,我明白了理论与实际应用相结合重要性,并提高了自己组织数据及编写大型程序能力。培养了基本、良好程序设计技能以及合作能力。这次课程设计同样提高了我综合运用所学知识能力。并对VC有了更深入了解。《数据结构》是一门实践性很强课程,上机实习是对学生全面综合素质进行训练一种最基本方法,是与课堂听讲、自学和练习相辅相成、必不可少一个教学环节。

上机实习一方面能使书本上知识变“活”,起到深化理解和灵活掌握教学内容目;另一方面,上机实习是对学生软件设计综合能力训练,包括问题分析,总体结构设计,程序设计基本技能和技巧训练。此外,还有更重要一点是:机器是比任何教师更严厉检查者。因此,在“数据结构”学习过程中,必须严格按照老师要求,主动地、积极地、认真地做好每一个实验,以不断提高自己编程能力与专业素质。

通过这段时间课程设计,我认识到数据结构是一门比较难课程。需要多花时间上机练习。这次程序训练培养了我实际分析问题、编程和动手能力,使我掌握了程序设计基本技能,提高了我适应实际,实践编程能力。总来说,这次课程设计让我获益匪浅,对数据结构也有了进一步理解和认识。

数据库课程设计心得体会范文(三)

一周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情的方法和技巧。在设计过程中,和同学们相互探讨,相互学习,相互监督。我学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世,这次课程设计对我来说受益良多。

课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程。“千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义。我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础。我这次设计的科目是数据结。

数据结构,是一门研究非数值计算的程序设计问题中计算机的 *** 作对象(数据元素)以及它们之间的关系和运算等的学科,而且确保经过这些运算后所得到的新结构仍然是原来的结构类型。“数据结构”在计算机科学中是一门综合性的专业基础课。数据结构是介于数学、计算机硬件和计算机软件三者之间的一门核心课程。数据结构这一门课的内容不仅是一般程序设计(特别是非数值性程序设计)的基础,而且是设计和实现编译程序、 *** 作系统、数据库系统及其他系统程序的重要基础。通过这次模具设计,我在多方面都有所提高。

在界面设置中使用函数调用while。其中文本显示颜色和背景颜色都可以任意按照自己的喜好,任意改变,但改变的时候必须采用标准英文大写,同时在制作显示菜单的窗口,大小根据菜单条数设计。最后采用printf输出程序设计界面。

这次的程序软件基本上运行成功,可以简单的建立链式循环链表,并进行输出,及循环语句的运用和选择语句的控制。由于时间和知识上的限制,使得程序规模相对较小,即功能还不很全面,应用也不很普遍。原来C语言可是涉及很多知识,而不是枯燥无聊的简单的代码部分而已,利用C语言方面的知识,我们可以设计出更完善的软件。

通过这次的课程设计,更是让我深刻认识到自己在学习中的不足,同时也找到了克服这些不足的方法,这也是一笔很大的资源。在以后的时间中,我们应该利用更多的时间去上机实验,加强自学的能力,多编写程序,相信不久后我们的编程能力都会有很大的提高能设计出更多的更有创新的作品。

数据库课程设计报告 目录目录……………………………………………………………………………………1一.设计目标…………………………………………………………………………2二.系统介绍…………………………………………………………………………2三.数据库设计……………………………………………………………………2 1需求分析………………………………………………………………………2 2概念结构设计…………………………………………………………………3 (1)实体设计………………………………………………………………3 (2)ER图……………………………………………………………………3 3逻辑结构设计…………………………………………………………………4四.应用程序设计……………………………………………………………………4 1delphi70开发环境……………………………………………………………4 2.软件分析……………………………………………………………………4 (1)软件的需求分析………………………………………………………4 (2)软件的基本功能………………………………………………………5 3软件的设计与实现……………………………………………………………6 五.实现的应用系统介绍……………………………………………………………8 1.系统模块……………………………………………………………………8 2 文件简介……………………………………………………………………8 3 系统运行……………………………………………………………………8 六.总结………………………………………………………………………………17 一设计目标理论应用--运用数据库设计理论设计一个较完善的有实际意义的数据库结构;工具使用--掌握目前流行数据库管理系统工具和前端应用开发工具;应用开发--为数据库开发相应应用程序,构成完整的数据库应用系统;报告编写--用文字处理软件编写高质量的设计报告。二系统简介名称:超市进销存管系统功能:基于超市管理的全面自动化,减少入库管理、出库管理及库存管理中的漏洞,节约不少管理开支,增加企业收入。 实现对产品的增加、修改、删除、以及日常查询,对产品的出库、入库进行管理。同时对营销状况进行简单的分析,并可以导出各种查询报表。数据库:ACCESS实现:Delphi 70系统构架:C/S(Client/Server )三.数据库设计.1.需求分析:超市进销存管理系统2.概念结构设计(1)实体设计商品信息(商品编号,商品名称,商品单位,商品单价,类别,产地,说明)进货信息(进货编号,商品编号,进货单价,进货数量,进货时间,经手人,供货单位)出货信息(出货编号,商品编号,出货单价,出货数量,经手人,接收人及说明等)库存信息(商品编号,库存说明,说明等)用户信息(用户名,密码,用户类型)(2)E-R图包含说明产地商品单价商品类别商品名称商品编号商 品经手人进货数量进货时间进货单价商品编号进货编号供货单位进货记录商品编号出货数量接收人经手人出货单价出货编号出货时间出货记录库存记录说明商品编号库存说明111n3逻辑结构设计关系模型(第1数据项为主键)商品信息(商品编号,商品名称,商品单位,商品单价,类别,产地,说明)进货信息(进货编号,商品编号,进货单价,进货数量,进货时间,经手人,供货单位)出货信息(出货编号,商品编号,出货单价,出货数量,经手人,接收人及说明等)库存信息(商品编号,库存说明,说明等)用户信息(用户名,密码,用户类型)出货商品金额(出货时间,出货单价,出货数量,出货金额)进货商品金额(进货时间,进货单价,进货数量,进货金额)四.应用程序设计1.Delphi 70 开发环境 Delphi被称为第四代编程语言,它具有简单、高效、功能强大的特点。和VC相比,Delphi更简单、更易于掌握,而在功能上却丝毫不逊色;和VB相比,Delphi则功能更强大、更实用。可以说Delphi同时兼备了VC功能强大和VB简单易学的特点。它一直是程序员至爱的编程工具。 Delphi 7的集成开发环境(1DE)和Delphi以前的版本基本一致。它把单、多个工具栏及一组窗口和应用程序设计在一起,将代码以事件的形式与界面的每一元素建立联系,使用户很方便地在这个高度集成的开发环境的组成和各种辅助工具的使用方法和使用技巧。2.软件分析(1)软件的需求分析: 开发本软件的主要目的是为了优化超市的日常管理。采用计算机管理信息系统为实现超市管理科学化和现代化,给它带来了明显的经济效益和社会效益 (2)软件的基本功能与说明: a商品信息管理商品信息管理:用来管理系统中要用来进行进货,出货 *** 作的商品的信息,包括添加,修改,删除和查询信息。其中,查询可以进行精确查询和模糊快速查询。任意时刻,生成当前表格报表。 b 用户管理1用户添加该权限只有管理员拥有,可以添加临时用户,或者增设管理员用户。2用户删除该权限只有管理员拥有,可以删除用户。3用户密码修改用来修改登陆用户的密码,长时间地使用一个密码可能会使密码不安全,导致整个系统的不安全,因此有必要定期修改密码。 c 营销分析1综合分析某一时间段内,将该超市的进货总额、出货总额进行统计,并算出总盈利;将库存中的商品总量统计出来。用户可以打印分析所得报表。同时提供进货情况查询、出货情况查询、库存情况查询。2日分析某一天中,将该超市的进货总额、出货总额进行统计,并算出总盈利;将库存中的商品总量统计出来。用户可以打印分析所得报表。 d 日常 *** 作商品进货 *** 作:用来完成商品的进货 *** 作。商品出货 *** 作:用来完成商品的出货 *** 作。进行进货 *** 作时,进货编号以及进货时间是自动生成的,无需改动,否则会出现错误。所生成的商品编号为该种类型商品的最大编号,且后面有提示用户允许的编号范围,超出此范围会出错,如果编号方式正确且大于最大编号,确定添加后会提示用户填写新加商品的相关信息。进行出货 *** 作时,出货编号自动生成,用记无须改动。在出货单价小于进货的最小单价时会询问是否继续出货,出货数量不能大于库存数量。e信息查询1库存信息查询:用来查询库存的商品的信息,可以按照商品编号,商品名称和商品类别来查询,可以将查询结果打印输出。该查询可以精确查找某一确定的商品的库存信息,并将其打印输出。同时,该查询可以根据商品的库存量来将商品中库存不足、库存饱和、库存过剩的商品一一列出并提供打印输出功能。2进货信息查询:用来查询商品的进货记录,可以按照商品编号,商品名称,商品类别,经手人和进货日期查询,可以将查询结果输出。该查询可以精确查找某一确定的商品或全部商品某一确定时间段的进货情况,并将其打印输出。同时以图表的形式分析该种商品的进货价格走势分析图。3出货信息查询:用来查询商品的出货记录,可以按照商品编号,商品名称,商品类别,经手人和出货日期查询,可以将查询结果打印输出。该查询可以精确查找某一确定的商品或全部商品某一确定时间段的出货情况,并将其打印输出。同时以图表的形式分析该种商品的出货价格走势分析图。3.软件设计与实现添加、修改、删除是通过delphi自带函数实现的。查询是通过添加SQL语句或者直接在access中建立相对的查询(如出货商品金额、进货商品金额查询)实现的。(1)程序实现//添加adoquery1Close;adoquery1SQLClear;adoquery1SQLAdd('select from 进货信息' );adoquery1Open ;adoquery1Append;adoquery1fieldbyname('进货编号')asstring:=edit1Text;adoquery1fieldbyname('商品编号')asstring:=edit2Text;adoquery1fieldbyname('进货单价')asstring:=edit3Text;adoquery1fieldbyname('进货数量')asstring:=edit4Text;adoquery1fieldbyname('进货时间')asstring:=edit5Text;adoquery1fieldbyname('经手人')asstring:=combobox5Text;adoquery1fieldbyname('供货单位')asstring:=edit7Text;adoquery1Post;快速添加:adoquery1Append;//删除一条记录if ApplicationMessageBox('真的要删除当前所选记录吗?','删除确认',MB_YESNOCANCEL+MB_ICONQUESTION+MB_DEFBUTTON3)<>IDYES then abortelseadoquery1delete;//修改一条记录if ApplicationMessageBox('真的要修改当前所选记录吗?','修改确认',MB_YESNOCANCEL+MB_ICONQUESTION+MB_DEFBUTTON3)<>IDYES then AdoQuery1CancelUpdateselseadoquery1edit;//对表的排序procedure TForm2DBGrid1TitleClick(Column: TColumn);var i : integer;beginfor i:= 1 to DBGrid1ColumnsCount dobegin//恢复所有标题字体为默认DBGrid1Columns[i-1]TitleFontColor := clWindowText;DBGrid1Columns[i-1]TitleFontStyle := [];end;if ADOQuery1Sort<>(ColumnFieldName+' ASC') then //判断原排序方式beginADOQuery1Sort := ColumnFieldName+' ASC';ColumnTitleFontColor := clRed; //改变标题行字体为红色,表示当前的排序方式为升序ColumnTitleFontStyle := [fsBold];endelse beginADOQuery1Sort := ColumnFieldName+' DESC';ColumnTitleFontColor := clBlue; //改变标题行字体为红色,表示当前的排序方式为降序ColumnTitleFontStyle := [fsBold];end;end;//查询示例adoquery2close;adoquery2sqlclear;adoquery2SQLAdd('select distinct(进货信息进货编号),商品信息商品名称,进货信息商品编号,商品信息类别,进货信息进货单价,进货信息进货数量,进货信息进货时间,进货信息经手人,进货信息供货单位 from 进货信息,商品信息 where 商品信息商品编号=进货信息商品编号 and ');adoquery2SQLAdd('进货时间>=#'+DateToStr(DateTimePicker1Date)+'# and 进货时间<=#'+DateToStr(DateTimePicker2Date+1)+'#');adoquery2Open;五.实现的应用系统介绍1.系统的模块(1)主界面模块Form1(2)信息管理模块Form2,form18(3)日常 *** 作模块Form3(4)信息管理模块Form5(5) 用户管理模块Form14(6)系统管理模块用户登陆:form8关于系统:form10退出系统:from11()登陆窗体Form82.文件简介:(1)文件help包括生成jun_help帮助的所有源程序。(2)文件image系统所有用到的文件(3) 文件project系统可执行文件projectexe。系统数据库超市进销存储管理系统mdb(4) 文件sounds系统所有用到的声音文件(5) 文件unit_date系统自动生成的相关文件3.系统运行:1.欢迎:2.到达主界面后,提示登陆(系统管理—登陆系统)。用户可以查看帮助获得系统的相关信息:3.用户登陆界面:4.若用户为管理员,则可以进行用户管理 *** 作。用户有权添加、修改、删除其它用户。5.若用户为普通用户,则用户只能对自己的相关信息进行修改,添加用户、删除用户不可用。6.商品信息管理模块商品信息管理:用来管理系统中要用来进行进货,出货 *** 作的商品的信息,包括添加,修改,删除和查询信息。其中,查询可以进行精确查询和模糊快速查询。任意时刻,生成当前表格报表。7.营销分析模块:1)综合分析某一时间段内,将该超市的进货总额、出货总额进行统计,并算出总盈利;将库存中的商品总量统计出来。用户可以打印分析所得报表。同时提供进货情况查询、出货情况查询、库存情况查询。2)日分析某一天中,将该超市的进货总额、出货总额进行统计,并算出总盈利;将库存中的商品总量统计出来。用户可以打印分析所得报表。8.商品进出货 *** 作模块:1)进行进货 *** 作时,进货编号以及进货时间是自动生成的,无需改动,否则会出现错误。所生成的商品编号为该种类型商品的最大编号,且后面有提示用户允许的编号范围,超出此范围会出错,如果编号方式正确且大于最大编号,确定添加后会提示用户填写新加商品的相关信息。2)进行出货 *** 作时,出货编号自动生成,用记无须改动。在出货单价小于进货的最小单价时会询问是否继续出货,出货数量不能大于库存数量。9.信息查询模块:1)库存信息查询:用来查询库存的商品的信息,可以按照商品编号,商品名称和商品类别来查询,可以将查询结果打印输出。该查询可以精确查找某一确定的商品的库存信息,并将其打印输出。同时,该查询可以根据商品的库存量来将商品中库存不足、库存饱和、库存过剩的商品一一列出并提供打印输出功能。2)进货信息查询:用来查询商品的进货记录,可以按照商品编号,商品名称,商品类别,经手人和进货日期查询,可以将查询结果输出。该查询可以精确查找某一确定的商品或全部商品某一确定时间段的进货情况,并将其打印输出。同时以图表的形式分析该种商品的进货价格走势分析图。3)出货信息查询:用来查询商品的出货记录,可以按照商品编号,商品名称,商品类别,经手人和出货日期查询,可以将查询结果打印输出。该查询可以精确查找某一确定的商品或全部商品某一确定时间段的出货情况,并将其打印输出。同时以图表的形式分析该种商品的出货价格走势分析图。10关于系统模块:11.用户管理模块:1)用户添加该权限只有管理员拥有,可以添加临时用户,或者增设管理员用户。2)用户删除该权限只有管理员拥有,可以删除用户。3)用户密码修改用来修改登陆用户的密码,长时间地使用一个密码可能会使密码不安全,导致整个系统的不安全,因此有必要定期修改密码。12.退出系统模块:

IT行业,数据库确实是一门相当重要的课程。但是在大学里面,对待数据库原理及应用这么课程以及其课程设计的重视程度就相差很大了,各个学校要求也不一样。如果是要学好,那确实要下工夫;如果只是完成课程设计,交差了事,其实相当简单。

既然是课程设计,也算是个小小的项目,既然是项目,也就离不开需求分析、数据库设计、部署实现等环节。当然,这个小小的项目只需要前面的部分:需求和数据库设计,数据库设计是重点。

需求分析就不用多说,和所有其他项目一样,无非就是用户需求,功能需求,系统需求等,找任何一本关于需求分析的书都是可以,除了那些个空话之外,更多的是要根据设计需要进行分析。

数据库设计就比较复杂一点,首先得把数据库原理搞清楚,比如:符合什么样的范式,怎么画ER图,如何理解用例图。在设计数据库之前,有一系列的分析要做:面向对象分析,用例分析,类和对象分析等等。分析到位是数据库设计成功的重要保障。分析完成之后才是设计,比如:逻辑结构设计,关系模式设计,存取方法设计,存储结构设计,数据完整性设计,参考完整性设计,Check约束,Default约束,触发器设计,视图设计,存储过程设计,权限设计等。这些都完成了,最后一步才是写SQL代码实现这些设计,创建数据库及相关的数据表,关联,视图,触发器,存储过程等一些列的看得见的数据库参数。

上面说的比较理论,也比较笼统。我想我可以用一个简单例子告诉你我要表达的意思。例子很简单,其中很多地方都不是太好,不过或许可以给你一个直观的思路。

数据库应用课程设计报告书

网上超市管理系统 

成    绩:

学    号:

姓    名:

指导教师:

20    年  月  日

目录

任务书 (3)

1    需求调查、分析 (4)

11         企业介绍 (4)

12         需求调查及分析 (5)

2    面向对象分析和设计 (7)

21  用例分析 (7)

22类和对象设计   (12)

3    逻辑结构设计 (15)

31  类和对象向关系模式转换 (15)

32 关系模式优化   (16)

4    数据库物理结构设计 (16)

41 存取方法设计   (16)

42  存储结构设计   (17)

5    数据库完整性设计 (17)

51 主键及唯一性索引  (17)

52  参照完整性设计 (18)

53  Check约束  (18)

54  Default约束   (18)

55 触发器设计  (19)

6    数据库视图设计 (19)

7    数据库存储过程设计 (20)

8    权限设计 (20)

9    总结 (21)

参考资料 (21)

网上超市管理系统

摘要:

网上超市管理系统,是以网上管理方式为实例而设计的一种实用型管理系统。本系统最大的特点是通用性、简单 *** 作性,适用于超市的管理。随着商品的增多,商品管理人员的负担越来越重,为了让所有商品管理人员能从繁重的工作中解脱出来,实现无纸化办公;也为了使工作更有条理,更方便,更有效率,更为了超市在经营中提高利润而开发出这套网上超市管理系统。

1 需求调查、分析

11      企业介绍

在Internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。在政府的大力提倡和支持下,我国电子商务已走上了健康发展的轨道。各行业纷纷建立自己的网站,开展网上产品信息发布,进行网上洽谈、签约,开展网络营销。将超市办成网上超市已经是大势所趋,甚至一些小型的超市也可以开展网上交易。总之,电子商务以互联网为媒介,以信息传播速度快、受众广泛、低成本动作的优势决定着其必然成为未来营销的主导,我国企业要充分重视由此带来的机遇和挑战,才能在激烈的国际竞争中立于不败之地。

在超市经营中,随着超市规模的不断扩大,人们对超市服务的要求不断提高,使用一款适合的网上超市管理系统将更加迫切。利用网上超市,人们可以在家里逛超市,只需要办理会员卡,就可以为本地顾客送货上门。不仅如此,把超市办成网上经营和管理将大大提高效率和收益。因此,开发一个网上超市管理系统是非常有必要和好处的。

12 需求调查及分析

121顾客需求

为方便用户购买商品,网上超市客户系统应该提供如下所示几种功能:

(1)商品分类:网上超市与传统超市相比的一个优势是,当用户明确自己要买哪类商品时,用户可以使用商品分类功能快速找到需要的商品。

(2)商品预览:以列表的方式显示商品信息,这样可以在页面显示大量的商品信息,同时可以提供更多的商品浏览方式,如分类浏览、热门商品等。

(3)商品显示:当用户找到感兴趣的商品后需要显示商品的详细信息,包括商品简介、出产商、价格等。

(4)购物帮助:当用户在购物中遇到什么问题时,可以查看购物帮助获得相关信息。管理员会根据顾客反映的情况及时更改或增添购物帮助的内容。

(5)购物车:当用户找到需要的商品时,可以先将商品加入购物车,然后继续允许找其他的商品,购物车中存储当前用户打算购买的所有商品。

(6)商品订单:当用户在网上超市中找到了所有需要的商品后,决定购买,可以下订单。管理员会定期处理用户下达的订单,并根据用户订单的信息向用户送货。

(7)用户注册:提供用户注册功能以及相关的用户信息修改、密码维护等。

122销售管理员需求

网上超市的销售部分的管理员功能是维护销售的正常工作,它需要提供如下功能:

(1)商品管理:商品是网上超市的内容所在,管理员需要能够维护超市中的商品信息。同时与商品相关的商品类型等信息也需要管理员维护。

(2)会员管理:由于有注册用户,所以管理员需要对拥护账号进行管理,如删除一些无效账号等。

(3)订单处理:在用户下达订单后,管理员需要对用户订单进行处理,为用户准备订购的商品,并组织送货、收取货等。

(4)购物帮助管理:管理员要根据用户反映的情况及时修改购物帮助的内容,使用户得到即时的帮助。

123采购、仓存管理员需求

网上超市的系统中将采购员和仓存管理员统一为采购、仓存管理员,其主要需求如下:

(1)录入商品信息:商品是网上超市的内容所在,当有新进的货物时,采购管理员需要维护超市中的商品信息。

(2)维护供应商信息:采购管理员在进行采购工作时,就需要对供应商信息的查询。

(3)维护仓库信息:有多上仓库,什么商品存放在哪个仓库,这些都需要采购仓存管理员来维护。

124系统管理员需求

网上超市的系统管理员功能是维护系统的正常工作,它需要提供如下功能:

(1)对系统中用户的管理:系统中顾客,销售管理员,采购、仓存管理员都是系统的用户,这些用户就需要系统管理员进行统一管理。

(2)会员管理:由于有注册用户,所以管理员需要对拥护账号进行管理,如删除一些无效账号等。但这样的一个功能可以授权于销售管理员去处理。

125数据库需求分析

用户的需求具体体现在各种信息的提供、保存、更新和查询。这就要求数据库结构能够充分地满足各种信息的输入和输出。收集基本数据、数据结构和数据处理流程,为下一步的具体设计做好充分的准备。

网上超市管理系统要处理的数据流程图:

 

2 面向对象分析和设计

21      用例分析

     22     类和对象设计

3 逻辑结构设计

31 类和对象向关系模式转换

顾客信息(姓名、顾客编号、性别、出生年月、家庭地址、邮政编码、是否居住本地区、联系电话、身份z号、备注信息)

供应商信息(供应商编号、公司名称、联系人姓名、联系地址、所在城市、邮政编码、电话号码、传真号码、备注信息)

购物车(商品编号、顾客编号、商品名称、商品规格、时间、备注信息)

商品信息(商品编号、商品名称、单价、商品规格、商品产地、保质期、类别、备注信息)

订单信息(订单编号、商品编号、顾客编号、商品名称、商品规格、数量、顾客姓名、时间、备注信息)

员工信息(姓名、职工号、部门编号、性别、出生年月、家庭地址、邮政编码、联系电话、身份z号、备注信息)

进货信息(进货信息编号、供应商编号、公司名称、联系人姓名、商品编号、商品名称、商品规格、商品产地、商品数量、商品单价、进货日期、备注信息)

部门信息(部门编号、部门名称、负责人姓名)

销售信息(销售信息编号、顾客编号、顾客姓名、商品编号、商品名称、商品规格、商品产地、商品数量、商品单价、销售日期、折扣、备注信息)

仓库信息(仓库编号、仓库名称、存放商品类别、容量、负责人编号,负责人姓名)

留言信息(留言编号、留言标题、留言内容、留言日期、顾客编号、回复人编号、回复日期)

积分信息(积分编号、顾客编号、顾客姓名、积分)

商品入库(仓库编号、仓库名称、商品编号、商品名称、库存量、入库时间)

32 关系模式优化

顾客信息(姓名、顾客编号、性别、出生年月、家庭地址、邮政编码、是否居住本地区、联系电话、身份z号、备注信息)

供应商信息(供应商编号、公司名称、联系人姓名、联系地址、所在城市、邮政编码、电话号码、传真号码、备注信息)

购物车(商品编号、顾客编号、时间、备注信息)

商品信息(商品编号、商品名称、单价、商品规格、商品产地、保质期、类别、备注信息)

订单信息(订单编号、商品编号、顾客编号、数量、时间、备注信息)

员工信息(姓名、职工号、部门编号、性别、出生年月、家庭地址、邮政编码、联系电话、身份z号、备注信息)

进货信息(进货信息编号、供应商编号、商品编号、商品名称、商品规格、商品数量、商品单价、进货日期、备注信息)

部门信息(部门编号、部门名称、负责人姓名)

销售信息(销售信息编号、顾客编号、商品编号、商品数量、商品单价、销售日期、折扣、备注信息)

仓库信息(仓库编号、仓库名称、存放商品类别、容量、负责人编号)

留言信息(留言编号、留言标题、留言内容、留言日期、顾客编号、回复人编号、回复日期)

积分信息(积分编号、顾客编号、积分)

商品库存(仓库编号、商品编号、库存量、入库时间)

4 数据库物理结构设计

41       存取方法设计

42       存储结构设计

为了提高查询时间和空间的利用率,对网上超市管理系统的数据库作如下设计:

首先将网上超市管理系统日志文件存放在磁带上,因为数据库的数据备份和日志文件等只在故障恢复的时候才要使用,而且数据量很大。第二,把所有的基本表(如:顾客信息表)存放在一块磁盘上,而所有的索引则存放在另一块磁盘上。这样分开存放的目的在于查询时多个磁盘驱动器并行工作,提高了物理I/O读写效率,也加快了存取速度。

5 数据库完整性设计

51 主键及唯一性索引

52       参照完整性设计

1、由于员工信息表中的部门编号必须在部门信息中存在,而部门编号又是部门信息表中的主键,所以员工信息表中将属性部门编号设计为外键。

2、订单信息表中属性商品编号对应于商品信息表中的商品编号,因此将其设计为外键。

订单信息表中字段顾客编号对应于顾客信息表中的顾客编号,而顾客编号又是顾客信息的主键,所以将顾客编号作为订单信息表的外键。

3、进货信息表中属性商品编号对应于商品信息表中的商品编号,因此将其设计为外键。

进货信息表中字段供应商编号对应于供应商信息表中的供应商编号,而供应商编号又是供应商信息表的主键,所以将供应商编号作为进货信息表的外键。

4、销售信息表中字段顾客编号对应于顾客信息表中的顾客编号,而顾客编号又是顾客信息表的主键,所以将顾客编号作为销售信息表的外键。此外,销售信息表中的商品编号必须在商品信息表中存在,所以将商品编号也设计为改表的外键。

5、留言信息表中顾客编号需要在顾客信息表中存在记录,把顾客编号作为该表的外键。留言信息表中的属性回复人编号必须是员工信息表在存在的记录,所以把回复人编号也设为留言信息表的外键。

6、积分表中的属性顾客编号对应于顾客信息表中的顾客编号,而顾客编号是主键,所以将其设计为积分表的外键。

53 Check约束

1、对积分表中的积分字段设计check约束:积分必须是大于或者等于0的。

2、订单信息表、进货信息表和销售信息表对数量、商品数量设计check约束:即这些属性值必须取大于或者等于0的值。

54 Default约束

1、积分表中的积分字段设计default约束:积分默认值为0。

2、订单信息表中属性值数量默认为1单位。

55       触发器设计

1、 当采购完成后,即在进货信息表中添加信息时,建立该表上的插入触发器。该触发器的功能是当进货信息表中插入信息时,将进货的商品信息自动添加到商品信息表中以及在商品库存表在自动增加库存量。在这些动作完成之后,将进货信息表中添加的该信息删除。

2、 在订单信息表上建立插入触发器。如果订单中要添加的商品信息在商品信息表中不存在,则不予以添加。当订单信息成功提交,即订单信息表在成功插入新记录时,首先根据该顾客的积分情况自动生成折扣,然后自动将订单信息表中的记录添加到销售信息表中,并且将积分信息表中的记录更新或添加。在这些动作完成之后,再将订单信息表在的该记录删除。

3、 在商品库存量不足的时候需要系统提示工作人员及时的进行采购,所以在商品库存表上建立一个触发器就可以完成以上功能。当商品库存量到达一定的底线时,自动给采购、库存管理员留言,即在留言信息表中添加信息。这样可以对商品库存情况动态掌握。

6              数据库视图设计

1、为了方便查看部门信息,建立部门信息视图。显示部门信息表中的全部内容。

2、商品查询在网上超市管理系统中查看的非常频繁,需要建立商品信息视图。显示商品信息表中的全部信息。

3、建立顾客信息视图,显示顾客信息表中的全部内容。

4、在采购的时候,采购人员需要对供应商的信息进行查询,因此需要建供应商信息视图,显示该表中的全部内容。

5、当顾客在网上逛过超市后会将自己喜欢的商品先放入购物车中备选,这时就需要对购物车进行查询。所以有必要建立购物车信息视图。除了显示购物车表中的全部信息外,还需要连接查询并显示商品信息表中的商品名称和商品规格以及其他的商品信息。

6、顾客确定要购买商品的时候,需要提交订单信息,而在提交之前必须对其进行查询,所以需要建立订单信息视图。显示订单信息,以及连接查询并显示商品信息表中的商品名称和商品规格以及其他的商品信息。

7、对于网上超市的各部门的负责人来说,经常需要对员工的信息查看,故建立员工信息视图。除显示员工信息表中全部信息外,还要通过连接查询并显示部门名称。

8、采购人员在采购前后都需要对进货信息进行查询,这就需要建立进货信息视图。除显示进货信息表中全部信息外,还要通过连接查询并显示供应商的公司名称、联系人姓名、联系电话和商品名称、商品规格、商品产地、数量及单价。

9、每隔一段时间,都要查看一下收益如何,即查询销售情况。因此需要建立一个销售信息视图。显示销售信息表中的全部信息和通过连接查询并显示商品名称、商品规格、商品产地、数量及单价。除此之外,还要计算并显示销售总额。

10、建立仓库信息视图,显示仓库信息表中的所有信息即可。

11、建立留言信息视图。显示留言信息表中的全部信息以及通过连接查询并显示顾客姓名和回复人的姓名。

12、对积分的查询也是顾客经常查询的项目。所以非常有必要建立积分信息视图。显示积分信息表在的所有信息和连接查询并显示顾客姓名。

13、不管是在销售还是在采购的时候,都要对商品的库存量进行查询。因此要建立商品库存信息视图。显示库存信息以及通过连接查询并显示仓库名称和商品名称、商品规格等其他商品信息。

7              数据库存储过程设计

1、 顾客是网上超市管理系统的最主要的用户,也需要经常的添加和删除,故建立顾客删除存储过程。在删除某个顾客信息的时候,如果他的购物车中还有记录,则将其删除;若他提交了订单信息,也要把订单信息中的记录删除;最后还要把留言信息表和积分表中与该顾客相关的信息一并删除。

2、 建立删除员工的存储过程。如果该员工是某个部门的负责人,则一般情况下不予以删除,如果要删除,则必须对部门信息表中的负责人进行更新。若该员工是留言信息表中的回复人,则要对留言信息表在回复人编号进行修改或者删除。

3、 建立删除商品的存储过程。如果某个商品已经过了保质期或者已经被淘汰了,则要对这样的商品进行删除。首先要在商品信息表中把这些商品删除,在商品库存表将其删除,其次若果有顾客将该商品选入了购物车,甚至提交了订单,则要对顾客予以说明并将其从购物车表和订单信息表中删除。

8              权限设计

9 总结

理论联系实际才能做好一件事,学习一门课程同样是这样。通过一周的数据库课程设计实习,我受益匪浅,从中学到了许多新知识,这些知识是在课堂中不能学到或者说很难学到的。并且对数据库应用这一门课程有了更深一步的理解。在做课程设计中,我们可以把课堂上所学的理论知识和实践联系起来,在所要开发的系统中渐渐学会了融会贯通。同样通过对SQL的应用,也使我们熟练和巩固了对SQL的理解。这样我们对开发系统的整个过程也有了一个系统的了解。

这次课程设计,我选择的课题是《教务管理系统》,在教务管理系统的开发中采用了完整的数据库设计的全过程,从需求分析到概念结构设计,到逻辑结构设计,再到物理结构设计,最后到数据库的实施和维护,每一步都认真的分析和实施。当然,在本次课程设计的成果中还存在许多的不足之处,这就需要我们学习更多的知识,进行更深研究。

在这次实习中,我们完全投入到了开发系统的世界里。结束后明白了理论和实践要想充分地结合,需要非常扎实的基本功。这就说明学好基础知识是理论付诸实践的前提。在开发教务管理系统中我学到了很多,希望在以后能充分利用实习的机会充实自己,用所学的理论知识充分去实践,在实践中又要努力去巩固理论知识。只有这样,才能把一门课程甚至一门学科学精、学透

参考资料:

1     萨师煊,王珊数据库系统概论高等教育出版社第三版2000

2     龚波等译 SQL SERVER 2000教程北京希望电子出版社

3     史嘉权,史红星,李博等数据库系统概论习题、实验与考试辅导清华大学出版社2006

4     赵乃真等信息系统设计与应用清华大学出版社2005

注:由于这里不好排版,文章中的表格和没有显示出来,我打包成附件了,可以下载查看。

1系统功能的基本要求:

产品入库管理,可以填写入库单,确认产品入库;

产品出库管理,可以填写出库单,确认出库;

借出管理,凭借条借出,然后能够还库;

初始库存设置,设置库存的初始值,库存的上下警戒限;

可以进行盘库,反映每月、年的库存情况;

可以查询产品入库情况、出库情况、当前库存情况,可以按出库单、入库单,产品、时间进行查询;

2、数据库要求:在数据库中至少应该包含下列数据表:

库存情况表;

出库单表;

入库单表;

出库台帐;

入库台帐;

借条信息表,反映,借出人,借出时间,借出产品,借出数量,还库时间等。

3、本课题设计的基本要求:

必须提交系统分析报告,包括系统的功能分析、系统的功能模块设计、数据库的数据字典,数据库的概念结构(E-R图),数据库中的表、视图(如果使用)、存储过程(如果使用)的结构和定义(可以用SQL脚本提供);

程序设计的报告:包括程序的运行环境、开发环境、程序的详细设计(包括模块之间的关系,模块的功能、主要功能实现的程序段)

系统的源程序,包括数据库脚本程序。

再看看这个 希望能帮助到你

数据库课程设计

题目:小型超市管理系统

1、项目计划

11系统开发目的

(1)大大提高超市的运作效率;

(2)通过全面的信息采集和处理,辅助提高超市的决策水平;

(3)使用本系统,可以迅速提升超市的管理水平,为降低经营成本, 提高效益,增强超市扩张力, 提供有效的技术保障。

12背景说明

21世纪,超市的竞争也进入到了一个全新的领域,竞争已不再是规模的竞争,而是技术的竞争、管理的竞争、人才的竞争。技术的提升和管理的升级是超市业的竞争核心。零售领域目前呈多元发展趋势,多种业态:超市、仓储店、便利店、特许加盟店、专卖店、货仓等相互并存。如何在激烈的竞争中扩大销售额、降低经营成本、扩大经营规模,成为超市营业者努力追求的目标。

13项目确立

针对超市的特点,为了帮助超市解决现在面临的问题,提高小型超市的竞争力,我们将开发以下系统:前台POS销售系统、后台管理系统,其中这两个子系统又包含其它一些子功能。

14应用范围

本系统适应于各种小型的超市。

15 定义

(1)商品条形码:每种商品具有唯一的条形码,对于某些价格一样的商品,可以使用自定义条形码。

(2)交易清单:包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号。

(3)商品积压:在一定时期内,远无法完成销售计划的商品会造成积压。

(4)促销:在一定时期内,某些商品会按低于原价的促销价格销售。

库存告警提示:当商品的库存数量低于库存报警数量时发出提示。

(5)盘点:计算出库存、销售额、盈利等经营指标。

16 参考资料

《数据库原理及设计》 陶宏才编 清华大学出版社

《SQL Server 2000 实用教程》范立南编 清华大学出版社

《SQL Server 2000 编程员指南》李香敏编 北京希望电子出版社

《轻松搞定 SQL Server 2000 程序设计》Rebecca MRiordan编

《软件工程规范》Watts SHumphrey编 清华大学出版社

《软件工程理论与实践》 Shari Lawrence Pfleeger编 清华大学出版社

《软件需求分析》 Swapna Kishore编 机械工业出版社

《软件工程思想》 林锐编

2、逻辑分析与详细分析

21系统功能

(1)、零售前台(POS)管理系统,本系统必须具有以下功能:

 商品录入:根据超巿业务特点制定相关功能,可以通过输入唯一编号、扫描条形码、商品名称等来实现精确或模糊的商品扫描录入。该扫描录入方法可以充分保证各种电脑 *** 作水平层次的人员均能准确快速地进行商品扫描录入。

 收银业务:通过扫描条形码或者直接输入商品名称(对于同类多件商品采用一次录入加数量的方式)自动计算本次交易的总金额。在顾客付款后,自动计算找零,同时打印交易清单(包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号)。如果顾客是本店会员并持有本人会员卡,则在交易前先扫描会员卡,并对所购物品全部实行95折优惠,并将所购物品的总金额累计到该会员的总消费金额中。 会员卡的有效期限为一年,满一年未续卡者,该会员卡将被注销。

 安全性:OS登陆、退出、换班与 *** 作锁定等权限验证保护;断电自动保护最大限度防止意外及恶意非法 *** 作。

 独立作业:有的断网收银即在网络服务器断开或网络不通的情况下,收银机仍能正常作业

(2)、后台管理系统,本系统必须具备以下功能

 进货管理: 根据销售情况及库存情况,自动制定进货计划(亦可手工制定修改),可以避免盲目进货造成商品积压。 按计划单有选择性地进行自动入库登记。 综合查询打印计划进货与入库记录及金额。

 销售管理: 商品正常销售、促销与限量、限期及禁止销售控制。 综合查询各种销售明细记录、各地收银员收银记录以及交结账情况等。 按多种方式统计生成销售排行榜,灵活察看和打印商品销售日、月、年报表。

 库存管理: 综合查询库存明细记录。 库存状态自动告警提示。如库存过剩、少货、缺货等。软件为您预警,避免库存商品积压损失和缺货。 库存自动盘点计算。

 人员管理: 员工、会员、供货商、厂商等基本信息登记管理。 员工 *** 作权限管理。 客户销售权限管理。

(3)系统结构

系统总体结构

模块子系统结构

功能描述:商品录入子系统要求能快速录入商品,因此必须支持条形码扫描。

功能描述:收银业务子系统能计算交易总额,打印交易清单,并根据会员卡打折。

功能描述:进货管理子系统可以根据库存自动指定进货计划,进货时自动等级,以及提供查询和打印计划进货与入库记录的功能。

功能描述:销售管理子系统可以控制某商品是否允许销售,查询每种商品的销售情况并产生年、月、日报表,同时可以生成销售排行榜。

功能描述:库存管理子系统提供查询库存明细记录的基本功能,并根据库存的状态报警,以及自动盘点计算。

功能描述:人员管理子系统提供基本信息登记管理,员工 *** 作权限管理,客户销售权限管理的功能。

22、流程图

前台管理系统

顶层DFD图

第0层DFD图

第1层DFD图

23、户类型与职能

(1)、员工(营业员):

 通过商品条形码扫描输入商品到购买清单

 *** 作软件计算交易总金额

 *** 作软件输出交易清单

 对会员进行会员卡扫描以便打折

(2)、:超市经理

 *** 作软件录入商品,供货商,厂商

 *** 作软件制定进货计划

 查询打印计划进货与入库记录

 *** 作软件控制商品销售与否

 查询打印销售情况

 *** 作软件生成销售排行榜

 查询库存明细记录

 根据软件发出的库存告警进行入货

 *** 作软件进行盘点计算

(3)、总经理:

 基本信息登记管理

 员工 *** 作权限管理

 客户销售权限管理

24、统开发步骤

 确定参与者和相关的用况

 为每个用况设计过程

 建立顺序图,确定每个脚本中对象的协作

 创建类,确定脚本中的对象

 设计, 编码, 测试, 集成类

 为过程编写系统测试案例

 运行测试案例,检验系统

25、系统环境需求

 系统模式

本系统采用C/S模式作为开发模式

 硬件环境

服务器端:

高性能的计算机一台,

普通的双绞线作为连接。

客户端: 普通的计算机或者工作站,

普通的双绞线作为连接。

 软件环境

服务器端:安装SQL Server 2000的服务器版本,

安装windows 2000服务器版本,

配置了诺顿等必须的防毒软件。

客户端: 安装SQL Server2000的服务器版本,

安装了VB等可视化开发工具软件,

安装windows2000服务器版本。

26、系统安全问题

信息系统尽管功能强大,技术先进,但由于受到自身体系结构,设计思路以及运行机制等限制,也隐含许多不安全因素。常见因素有:数据的输入,输出,存取与备份,源程序以及应用软件,数据库, *** 作系统等漏洞或缺陷,硬件,通信部分的漏洞,企业内部人员的因素,病毒,“黑客”等因素。因此,为使本系统能够真正安全,可靠,稳定地工作,必须考虑如下问题:为保证安全,不致使系统遭到意外事故的损害,系统因该能防止火,盗或其他形式的人为破坏。

 系统要能重建

 系统应该是可审查的

 系统应能进行有效控制,抗干扰能力强

 系统使用者的使用权限是可识别的

3、基于UML的建模

31语义规则

用例模型(use cases view)(用例视图)的基本组成部件是用例(use case)、角色(actor)和系统(system)。用例用于描述系统的功能,也就是从外部用户的角度观察,系统应支持哪些功能,帮助分析人员理解系统的行为,它是对系统功能的宏观描述,一个完整的系统中通常包含若干个用例,每个用例具体说明应完成的功能,代表系统的所有基本功能(集)。角色是与系统进行交互的外部实体,它可以是系统用户,也可以是其它系统或硬件设备,总之,凡是需要与系统交互的任何东西都可以称作角色。系统的边界线以内的区域(即用例的活动区域)则抽象表示系统能够实现的所有基本功能。在一个基本功能(集)已经实现的系统中,系统运转的大致过程是:外部角色先初始化用例,然后用例执行其所代表的功能,执行完后用例便给角色返回一些值,这个值可以是角色需要的来自系统中的任何东西。

UML:是一种标准的图形化建模语言,它是面向对象分析与设计的一种标准表示;它不是一种可视化的程序设计语言而是一种可视化的建模语言;不是工具或知识库的规格说明而是一种建模语言规格说明是一种表示的标准;不是过程也不是方法但允许任何一种过程和方法使用它。

用例(use case):

参与者(actor):

32、UML模型

321、系统UML模型

322、子系统UML模型

(1)零售前台(POS)管理系统用例视图

(2)后台管理系统用例视图

33、系统实现图

4、超市销售系统概念设计文档

(1)、系统ER图

(2)、系统ER图说明

1) 商店中的所有用户(员工)可以销售多种商品,每种商品可由不同用户(员工)销售;

2) 每个顾客可以购买多种商品,不同商品可由不同顾客购买;

3) 每个供货商可以供应多种不同商品,每种商品可由多个供应商供应。

(3)、视图设计

1) 交易视图(v_Dealing)——用于查询交易情况的视图;

2) 计划进货视图(v_PlanStock)——用于查询进货计划的视图;

3) 销售视图(v_Sale)——用于查询销售明细记录的视图;

4) 入库视图(v_Stock)——用于查询入库情况的视图。

5、逻辑设计文档

(1)、系统关系模型

a) 商品信息表(商品编号,商品名称,价格,条形码,促销价格,促销起日期,促销止日期,允许打折,库存数量,库存报警数量,计划进货数,允许销售,厂商编号,供货商编号)

b) 用户表(用户编号,用户名称,用户密码,用户类型)

c) 会员表(会员编号,会员卡号,累积消费金额,注册日期)

d) 销售表(销售编号,商品编号,销售数量,销售金额,销售日期)

e) 交易表(交易编号,用户名称,交易金额,会员卡号,交易日期)

f) 进货入库表(入库编号,入库商品编号,入库数量,单额,总额,入库日期,计划进货日期,入库状态)

g) 供货商表(供货商编号,供货商名称,供货商地址,供货商电话)

h) 厂商表(厂商编号,厂商名称,厂商地址,厂商电话)

(2)、系统数据库表结构

数据库表索引

表名 中文名

MerchInfo 商品信息表

User 用户表

Menber 会员表

Sale 销售表

Dealing 交易表

Stock 进货入库表

Provide 供货商表

Factory 厂商表

商品信息表(MerchInfo)

字段名 字段类型 长度 主/外键 字段值约束 对应中文名

MerchID int 4 P Not null 商品编号

MerchName Varchar 50 Not null 商品名称

MerchPrice Money 4 Not null 价格

MerchNum Int 4 Not null 库存数量

CautionNum Int 4 Not null 库存报警数量

PlanNum Int 4 null 计划进货数

BarCode Varchar 50 Not null 条形码

SalesProPrice Money 4 促销价格

SalesProDateS Datetime 8 促销起日期

SalesProDateE Datetime 8 促销止日期

AllowAbate Int 4 Not null 允许打折

AllowSale Int 4 Not null 允许销售

FactoryID Varchar 10 F Not null 厂商编号

ProvideID Varchar 10 F Not null 供货商编号

用户表(User)

字段名 字段类型 长度 主/外键 字段值约束 对应中文名

UserID varchar 10 P Not null 用户编号

UserName Varchar 25 Not null 用户名称

UserPW Varchar 50 Not null 用户密码

UserStyle Int 4 Not null 用户类型

会员表(Menber)

字段名 字段类型 长度 主/外键 字段值约束 对应中文名

MemberID Varchar 10 P Not null 会员编号

MemberCard Varchar 20 Not null 会员卡号

TotalCost Money 4 Not null 累积消费金额

RegDate Datetime 8 Not null 注册日期

销售表(Sale)

字段名 字段类型 长度 主/外键 字段值约束 对应中文名

SaleID Varchar 10 P Not null 销售编号

MerChID Varchar 10 F Not null 商品编号

SaleDate Datetime 8 Not null 销售日期

SaleNum Int 4 Not null 销售数量

SalePrice Money 4 Not null 销售单额

交易表(Dealing)

字段名 字段类型 长度 主/外键 字段值约束 对应中文名

DealingID Varchar 10 P Not null 交易编号

DealingPrice Money 4 Not null 交易金额

DealingDate Money 4 Not null 交易日期

MemberID Varchar 10 会员卡号

UserName Varchar 10 F Not null 用户名称

入库纪录表(Stock)

字段名 字段类型 长度 主/外键 字段值约束 对应中文名

StockID Varchar 10 P Not null 入库编号

MerchID Varchar 10 F Not null 入库商品编号

MerchNum Int 4 Not null 入库数量

MerchPrice Money 4 Not null 单额

TotalPrice Money 4 Not null 总额

StockDate Datetime 8 Datetime 入库日期

PlanDate Datetime 8 Datetime 计划进货日期

StockState Int 4 Not null 入库状态

供货商表(Provide)

字段名 字段类型 长度 主/外键 字段值约束 对应中文名

ProvideID varchar 10 P Not null 供货商编号

ProvideName Varchar 50 Not null 供货商名称

ProvideAddress Varchar 250 供货商地址

ProvidePhone Varchar 25 供货商电话

厂商表(Provide)

字段名 字段类型 长度 主/外键 字段值约束 对应中文名

FactoryID varchar 10 P Not null 厂商编号

FactoryName Varchar 50 Not null 厂商名称

FactoryAddress Varchar 250 厂商地址

FactoryPhone Varchar 25 厂商电话

6、物理设计文档

/----------创建数据库----------/

create database SuperMarketdb

on primary

(

name=SuperMarketdb,

filename='C:\Program Files\Microsoft SQL Server\MSSQL\Data\SuperMarketdbmdf',

size=100MB,

maxsize=200MB,

filegrowth=20MB

)

log on

(

name=SuperMarketlog,

filename='C:\Program Files\Microsoft SQL Server\MSSQL\Data\SuperMarketdbldf',

size=60MB,

maxsize=200MB,

filegrowth=20MB

)

go

/----------创建基本表----------/

use [SuperMarketdb]

go

/创建交易表/

CREATE TABLE Dealing (

DealingID int identity(1,1) Primary key ,

DealingDate datetime NOT NULL ,

DealingPrice money NOT NULL ,

UserName varchar(25) NULL ,

MemberCard varchar(20) NULL

)

GO

/创建厂商表/

CREATE TABLE Factory (

FactoryID varchar(10) Primary key ,

FactoryName varchar(50) NOT NULL ,

FactoryAddress varchar(250) NULL ,

FactoryPhone varchar(50) NULL

)

GO

/创建会员表/

CREATE TABLE Member (

MemberID varchar(10) Primary key ,

MemberCard varchar(20) NOT NULL ,

TotalCost money NOT NULL ,

RegDate datetime NOT NULL

)

GO

/创建商品信息表/

CREATE TABLE MerchInfo (

MerchID int identity(1,1) Primary key ,

MerchName varchar(50) Unique NOT NULL ,

MerchPrice money NOT NULL ,

MerchNum int NOT NULL ,

CautionNum int NOT NULL ,

PlanNum int NOT NULL ,

BarCode varchar(20) Unique NOT NULL ,

SalesProPrice money NULL ,

SalesProDateS datetime NULL ,

SalesProDateE datetime NULL ,

AllowAbate int NOT NULL ,

AllowSale int NOT NULL ,

FactoryID int NOT NULL ,

ProvideID int NOT NULL

)

GO

/创建供应商表/

CREATE TABLE Provide (

ProvideID varchar(10) Primary key ,

ProvideName varchar(50) NOT NULL ,

ProvideAddress varchar(250) NULL ,

ProvidePhone varchar(25) NULL

)

GO

/创建销售表/

CREATE TABLE Sale (

SaleID int identity(1,1) Primary key ,

MerChID int NOT NULL ,

SaleDate datetime NOT NULL ,

SaleNum int NOT NULL,

SalePrice money NOT NULL

)

GO

/创建入库表/

CREATE TABLE Stock (

StockID int identity(1,1) Primary key ,

MerchID int NOT NULL ,

MerchNum int NOT NULL ,

MerchPrice money NULL ,

TotalPrice money NULL ,

PlanDate datetime NULL ,

StockDate datetime NULL,

StockState int NOT NULL

)

GO

/创建用户表/

CREATE TABLE User (

UserID varchar(10) Primary key ,

UserName varchar(25) NOT NULL ,

UserPW varchar(50) NOT NULL ,

UserStyle int NOT NULL ,

)

GO

/----------创建表间约束----------/

/商品信息表中厂商编号、供应商编号分别与厂商表、供应商表之间的外键约束/

ALTER TABLE MerchInfo ADD

CONSTRAINT [FK_MerchInfo_Factory] FOREIGN KEY

(

[FactoryID]

) REFERENCES Factory (

[FactoryID]

),

CONSTRAINT [FK_MerchInfo_Provide] FOREIGN KEY

(

[ProvideID]

) REFERENCES Provide (

[ProvideID]

)

GO

/销售表中商品编号与商品信息表之间的外键约束/

ALTER TABLE Sale ADD

CONSTRAINT [FK_Sale_MerchInfo] FOREIGN KEY

(

[MerChID]

) REFERENCES MerchInfo (

[MerchID]

) ON DELETE CASCADE

GO

/入库表中商品编号与商品信息表之间的外键约束/

ALTER TABLE Stock ADD

CONSTRAINT [FK_Stock_MerchInfo] FOREIGN KEY

(

[MerchID]

) REFERENCES MerchInfo (

[MerchID]

) ON DELETE CASCADE

GO

/----------创建索引----------/

/在交易表上建立一个以交易编号、交易日期为索引项的非聚集索引/

CREATE nonclustered INDEX IX_Dealing ON Dealing(DealingID, DealingDate)

GO

/在商品信息表上建立一个以商品编号为索引项的非聚集索引/

CREATE nonclustered INDEX IX_MerchInfo ON MerchInfo(MerchID)

GO

/在销售表上建立一个以销售编号、销售日期为索引项的非聚集索引/

CREATE nonclustered INDEX IX_Sale ON Sale(SaleID, SaleDate)

GO

/在入库表上建立一个以入库编号、入库日期、商品编号为索引项的非聚集索引/

CREATE nonclustered INDEX IX_Stock ON Stock(StockID, StockDate, MerchID)

GO

/----------创建视图----------/

/创建用于查询交易情况的视图/

CREATE VIEW v_Dealing

AS

SELECT DealingDate as 交易日期,

UserName as 员工名称,

MemberCard as 会员卡号,

DealingPrice as 交易金额

FROM Dealing

GO

/创建用于查询进货计划的视图/

CREATE VIEW v_PlanStock

AS

SELECT StockStockID as SID,

MerchInfoMerchName as 商品名称,

MerchInfoBarCode as 条形码,

FactoryFactoryName as 厂商,

ProvideProvideName as 供货商,

StockMerchNum as 计划进货数量,

StockPlanDate as 计划进货日期

FROM Stock,MerchInfo,Provide,Factory

Where StockMerchID = MerchInfoMerchID

and ProvideProvideID=MerchInfoProvideID

and FactoryFactoryID=MerchInfoFactoryID

and StockStockState=0

GO

/创建用于查询销售明细记录的视图/

CREATE VIEW v_Sale

AS

SELECT MerchInfoMerchName as 商品名称,

MerchInfoBarCode as 条形码,

MerchInfoMerchPrice as 商品价格,

SaleSalePrice as 销售价格,

SaleSaleNum as 销售数量,

SaleSaleDate as 销售日期

FROM Sale INNER JOIN

MerchInfo ON SaleMerChID = MerchInfoMerchID

GO

/创建用于查询入库情况的视图/

CREATE VIEW v_Stock

AS

SELECT MerchInfoMerchName as 商品名称,

MerchInfoBarCode as 条形码,

FactoryFactoryName as 厂商,

ProvideProvideName as 供货商,

StockMerchPrice as 入库价格,

StockMerchNum as 入库数量,

StockTotalPrice as 入库总额,

StockStockDate as 入库日期

FROM Stock,MerchInfo,Provide,Factory

Where StockMerchID = MerchInfoMerchID

and ProvideProvideID=MerchInfoProvideID

and FactoryFactoryID=MerchInfoFactoryID

and StockStockState=1

GO

7、小结

和传统管理模式相比较,使用本系统,毫无疑问会大大提高超市的运作效率,辅助提高超市的决策水平,管理水平,为降低经营成本, 提高效益,减少差错,节省人力,减少顾客购物时间,增加客流量,提高顾客满意度,增强超市扩张能力, 提供有效的技术保障。

由于开发者能力有限,加上时间仓促,本系统难免会出现一些不足之处,例如:

 本系统只适合小型超市使用,不能适合中大型超市使用;

 超市管理系统涉及范围宽,要解决的问题多,功能复杂,实现困难,但由于限于时间,本系统只能做出其中的一部分功能;

对于以上出现的问题,我们深表歉意,如发现还有其它问题,希望老师批评指正。

请采纳。

以上就是关于数据库课程设计心得体会范文全部的内容,包括:数据库课程设计心得体会范文、数据库应用课程设计的报告、数据库sql 的课程设计怎么做,要借哪些书看,求大神指教等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10180814.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-06
下一篇2023-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存