资源描述
摘 要数据库是数据管理的最新技术,是计算机科学的重要分支。今天,信息资源已成为各个部门的重要财富和资源。建立一个满足各级部门信息处理要求的行之有效的信息系统也成为一个企业或组织生存和发展的重要条件。对工厂管理部门而言,以前单一的手工检索已不能满足人们的要求,往往是投入了大量的人力和财力却得不到高效的管理效率。为了便于工厂信息资料的管理需要有效的工厂管理软件,减轻工作人员的工作量,方便工作人员对它的操作,提高管理的质量和水平,做到高效、智能化管理,达到提高工厂信息检索效率的目的。采用数据库技术生成的工厂管理系统将会极大地方便并简化图管理人员和工作人员的劳动,使工作人员从繁忙、复杂的工作进入到一个简单、高效的工作中。基于这个问题,开发了工厂管理系统。系统采用C/S模式,实现了工厂信息更新与查询的方便、高效性、有效性和及时性。本文通过作者设计和开发一个中小型工厂管理系统的实践,阐述了工厂管理软件中所应具有的基本功能、设计、实现。关键字:工厂管理,数据库技术,功能目 录引 言1第一章 需求分析阶段21.1 引言21.2 需求分析阶段的目标与任务21.2.1 处理对象21.2.2 处理功能及要求31.2.3 安全性及完整性要求31.3 需求分析阶段成果31.3.1 体会和心得31.3.2 工厂管理系统业务流程图41.3.3 工厂管理系统数字字典4第二章 概念设计阶段72.1 引言72.2 任务与目标72.3 阶段结果7第三章 逻辑设计阶段123.1逻辑设计的任务和目标123.2数据组织123.2.1将E-R图转换为关系模型123.2.2 模型分析133.2.3 用户子模式定义13第四章 物理设计阶段154.1物理设计阶段的目标与任务154.2数据存储方面15第五章 数据库实施阶段165.1建立数据库、数据表、视图、索引165.1.1 建立数据库165.1.2 建立数据表165.1.3 建立视图195.1.4 建立索引205.1.5 建立触发器205.1.6 数据库备份与恢复215.1.7 创建登录名、用户以及授予用户权限225.2数据入库225.3创建各个功能的存储过程22第六章 设计总结23参考文献24附录1 存储过程定义25附录2 数据查看和存储过程功能的验证28引 言在社会进入信息化时代以来,信息产业所创造的社会价值渐渐地开始占据社会体系中不可替代的位置。人们也渐渐明白了信息和知识更新的重要性,在这个信息更新快速的社会,信息代表着价值,管理好信息也就意味着非常重要,好的管理机制带来效率,效率象征着竞争力,象征着效益,一个好的管理系统对于一个工厂来说是至关重要的,它是一个工厂的生命线。在计算机日益普及的今天,建立一个满足各级部门信息处理要求的行之有效的信息系统也成为一个企业或组织生存和发展的重要条件。对工厂管理部门而言,以前单一的手工检索已不能满足人们的要求,往往是投入了大量的人力和财力却得不到高效的管理效率。为了便于工厂信息资料的管理需要有效的工厂管理软件,减轻工作人员的工作量,方便工作人员对它的操作,提高管理的质量和水平,做到高效、智能化管理,达到提高工厂信息检索效率的目的。采用数据库技术生成的工厂管理系统将会极大地方便并简化图管理人员和工作人员的劳动,使工作人员从繁忙、复杂的工作进入到一个简单、高效的工作中。本文以工厂管理系统管理系统开发过程为背景,全文分为目录、需求分析、概要设计、逻辑设计、物理设计,以及系统的实现等全过程。在程序设计与调试上采用了自上而下,逐步细化,逐步完善的原则。采用结构化的功能模块设计系统功能,可读性好,易于扩充。基本功能全面,系统可读性好,易于维护、更新,安全性好。第一章 需求分析阶段1.1 引言在进行系统设计之前,首先要对系统的现状进行分析。根据系统的目标、需求和功能,制定和选择一个较好的系统方案,从而达到一个合理的优化系统。需求分析是在于要弄清用户对开发的数据库应用系统的确切要求。数据库设计的第一步是明确数据库的目的和如何使用,也就是说需要从数据库中得到哪些信息。明确目的之后,就可以确定您需要保存哪些主题的信息(表),以及每个主题需要保存哪些信息(表中字段)。在构造系统时,首先从需求出发构造数据库表,然后再由数据库表结合需求划分系统功能模块。这样,就把一个大的系统分解成了几个小系统。这里把系统的层次划分为了五个部分:仓库管理、车间管理、工人管理、产品管理、零件管理。能够实现以下功能:1.更新和查询仓库信息2.更新和查询车间信息3.更新和查询工人信息4.更新和查询产品信息5.更新和查询零件信息1.2 需求分析阶段的目标与任务1.2.1 处理对象工厂:厂名、厂长名车间:车间号、车间主任姓名、车间主任地址、车间主任电话生产产品:车间号、产品号、产品数量、开始生产时间、生产截止时间生产零件:车间号、零件号、零件数量、开始生产时间、生产截止时间工人:职工号、职工姓名、职工年龄、职工性别、工种、工作车间号产品:产品号、产品名称、产品价格、零件号、零件数量零件:零件号、价格重量、价格价格仓库:仓库号、仓库主任姓名、仓库主任电话储存产品:仓库号、产品号、产品数量储存零件:仓库号、零件号、零件数量1.2.2 处理功能及要求1能够存储一定数量的工厂信息,并方便有效的进行相应的数据操作和管理,这主要包括:1) 工厂信息的录入、删除及修改。2) 工厂信息的多关键字检索查询。2能够提供一定的安全机制,提供数据信息授权访问,防止随意删改、查询。3对查询、统计的结果能够列表显示。1.2.3 安全性及完整性要求1) 安全性要求 系统安全性要求体现在数据库安全性、信息安全性和系统平台的安全性等方面。安全性先通过视图机制,不同的用户只能访问系统授权的视图,这样可提供系统数据一定程度上的安全性,再通过分配权限、设置权限级别来区别对待不同操作者对数据库的操作来提高数据库的安全性;系统平台的安全性体现在操作系统的安全性、计算机系统的安全性和网络体系的安全性等方面。2) 完整性要求系统完整性要求系统中数据的正确性以及相容性。可通过建立主、外键,使用check约束,或者通过使用触发器和级联更新。1.3 需求分析阶段成果1.3.1 体会和心得在需求分析这个阶段,由于环境的限制,我主要途径是通过上网查询工厂相关信息和自己生活中的一些积累,由于这是第一次做这样的一个需求分析,刚开始的时候,不知道从何下手,通过向老师、学长、同学的学习和讨论,慢慢地开始理清了思路,然后集中精力在网上了解工厂管理方面的问题和相关的一些操作,在设计ER图的时候遇到过一些麻烦,通过老师对我的知道,终于还是顺利的完成了这个阶段的任务。1.3.2 工厂管理系统业务流程图表1.1 业务流程图管理员查询信息修改信息更新信息工厂管理系统零件管理部门产品管理部门车间管理部门工厂管理部门执行命令仓库管理部门1.3.3 工厂管理系统数字字典1.数据:系统涉及的数据项一共39项表1.2 数据项列表数据项编号数据项名数据项含义存储结构别名DI-1Weno仓库的序号Varchar(20)仓库号DI-2We_Dname仓库主任的姓名Varchar(20)仓库主任姓名DI-3We_phonenumber仓库主任的电话Varchar(20)仓库主任电话DI-4Ptno产品的序号Varchar(20)产品号DI-5Ptname产品的名称Varchar(20)产品名称DI-6Ptprice产品的价格numeric(10,1)产品价格DI-7Parts_no所需零件的序号Varchar(20)零件号DI-8Parts_number所需零件的数量int零件数量DI-9Wpno车间的序号Varchar(20)车间号DI-10Wp_Daddrsee车间主任的住址Varchar(20)车间主任地址DI-11Wp_Dphonenubmer车间主任的电话Varchar(20)车间主任电话DI-12Wp_Dname车间主任的姓名Varchar(20)车间主任姓名DI-13Ptst_weno产品所在仓库序号Varchar(20)仓库号DI-14Ptst_ptnumber仓库中指定产品数量int产品数量DI-15Ptst_ptno产品的序号Varchar(20)产品号DI-16Psst_weno零件所在仓库序号Varchar(20)仓库号DI-17Psst_psnumber零件中指定产品数量int零件数量DI-18Psst_psno零件的序号Varchar(20)零件号DI-19Fyname工厂的名字Varchar(20)厂名DI-20Fy_Dname厂长的姓名Varchar(20)厂长名DI-21Wrno工人的工作号Varchar(20)职工号DI-22Wrname工人的姓名Varchar(20)职工姓名DI-23Wrsex工人的性别Varchar(20)职工性别DI-24Wrage工人的年龄int职工年龄DI-25Wrrypes工人的工种Varchar(20)工种DI-26Wr_workshop工人的工作车间Varchar(20)工作车间号DI-27Psno零件的序号Varchar(20)零件号DI-28Psweigh零件的重量int零件重量DI-29Psprice零件的价格numeric(10,1)零件价格DI-30Pp_wpno生产产品的车间序号Varchar(20)车间号DI-31Pp_starttime开始生产产品的时间datetime开始生产时间DI-32Pp_ptnumber所需生产的数量Varchar(20)产品数量DI-33Pp_endtime生产该产品截止时间datetime)生产截止时间DI-34Pp_ptno所生产产品的序号Varchar(20)产品号DI-35Ps_wpno生产零件的车间序号Varchar(20)车间号DI-36Ps_starttime开始生产零件的时间datetime开始生产时间DI-37Ps_psnumber所需生产的数量Varchar(20)零件数量DI-38Ps_endtime生产该零件截止时间datetime生产截止时间DI-39Ps_psno所生产零件的序号Varchar(20)零件号2.数据结构:表1.3 数据结构列表数据结构编号数据结构名数据结构含义组成部分DS-1Warehouse仓库信息Weno, We_phonenumber We_DnameDS-2Product产品信息Ptno , Ptname,PtpriceParts_no , Parts_numberDS-3Workshop车间信息Wpno , Wp_DaddressWp_Dphonenubmer ,Wp_DnameDS-4Product_storage产品储存信息Ptst_wenoPtst_ptnumber , Ptst_ptnoDS-5 Parts_storage零件储存信息Psst_wenoPsst_psnumber , Psst_psnoDS-6Factory工厂信息FynameFy_DnameDS-7Worker工人信息Wrno , Wrname , WrsexWrage , Wrrypes , Wr_workshopDS-8Parts零件信息Psno , PsweightPspriceDS-9Product_producing产品生产信息Pp_ptnumber , Pp_starttime Pp_endtime, Pp_ptno , Pp_wpnoDS-10Parts_producing零件生产信息Ps_starttime , Ps_psnumberPs_endtime , Ps_psno , Ps_wpno3.处理逻辑描述1.4处理逻辑列表处理编号处理功能处理过程PS-1查询先确定要查询的部门,然后通过语句可以查询出相应部门的信息,并且按表格的形式显示出结果PS-2更新先确定要做更新的部门,把要修改、删除的信息通过平台进行修改第二章 概念设计阶段2.1 引言工厂管理系统的主要目标是方便对工厂信息的管理和更新,实现工厂信息管理的系统化和自动化,使得工厂管理高度一体化,从而提高工厂生产效益。主要任务是对仓库信息、车间信息、工人信息、产品和产品生产信息、零件和零件生产信息的操作及处理。概念设计阶段主要是将需求分析阶段得到的用户需求抽象为信息结构(概念模型)的过程,它是整个数据库设计的关键。2.2 任务与目标(1)设计分E-R图,即各子模块的E-R图;(2)生成初步E-R图,通过合并方法,做到各子系统实体、属性、联系统一;(3)生成全局E-R图,通过消除冲突等方法。2.3 阶段结果(1)各个子模块的E-R图:WarehouseWenoWe_DnameWe_phonenumber图2.1 仓库信息E-R图ProductPtnoPtnameParts_noPtpriceParts_number图2.2 产品信息E-R图 WorkshopWpnoWp_DphonenubmerWp_DaddressWp_Dname图2.3 车间信息E-R图Product_storagePtst_wenoPtst_ptnoPtst_ptnumber图2.4 产品储存信息E-R图Parts_storagePsst_wenoPsst_psnoPsst_psnumber图2.5 零件储存信息E-R图FactoryFynameFy_Dname图2.6 工厂信息E-R图WorkerWrnoWrnameWrrypesWrageWrsexWr_workshop图2.7 工人信息E-R图PartsPsnoPsweightPsprice图2.8 零件信息E-R图Product_producingPp_wpnoPp_ptnoPp_ptnumberPp_endtimePp_starttime图2.9 产品生产信息E-R图Parts_producingPs_wpnoPs_psnoPs_psnumberPs_endtimePs_starttime图2.10 零件生产信息E-R图(2)全局E-R图1NWorkshop BelongWorkerWarehouseBelongBelongProductProduct_producingPartsParts_storageConstituteParts_producingProduct_storage _storageFactoryN1NNN11PNMMMPP图2.11 全局E-R图第三章 逻辑设计阶段3.1逻辑设计的任务和目标以上的概念设计阶段是独立于任何一种数据模型的,但是逻辑设计阶段就与选用的DBMS产品发生关系了,系统逻辑设计的任务就是将概念设计阶段设计好的基本E-R图转换为选用DBMS产品所支持的数据模型相符合的逻辑结构。具体内容包括数据组织(将E-R图转换成关系模型、模型优化、数据库模式定义、用户子模式设计)、数据处理(画出系统功能模块图)两大任务。3.2数据组织3.2.1将E-R图转换为关系模型实体型转换为关系模式。实体的属性就是关系的属性,实体的码就是关系的码。对于实体间的联系则有以下不同的情况:一个m:n联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。 一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。三个或三个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合 具有相同码的关系模式可合并。由于车间和工人是1:n的关系,固可以将联系跟实体工人的关系模式合并,由于产品和车间,零件和车间都是m:n的关系,所以可以建立一个独立的关系模式,另外产品和仓库的关系是1:n,零件和仓库的关系是m:n,两者也都可以建立一个独立的关系模式。具体的基本E-R图向关系模型的转化如下:工厂:Factory(Fyname,Fy_Dname)车间:Workshop(Wpno,Wp_Dname,Wp_Dphonenubmer,Wp_Daddress)工人:Worker(Wrno,Wrname,Wrsex,Wrage,Wrtypes,Wr_workshop)零件:Parts(Psno , Psweight,Psprice)产品:Product(Ptno,Ptname,Ptprice,Parts_no,Parts_number)仓库:Warehous(Weno,We_phonenumber,We_Dname)产品储存:Product_storage(Ptst_weno,Ptst_ptnumber,Ptst_ptno)零件储存:Parts_storage(Psst_weno,Psst_psnumber,Psst_psno)产品生产:Product_producing(Pp_ptnumber , Pp_starttime ,Pp_endtime, Pp_ptno , Pp_wpno)零件生产:Parts_producing(Ps_psnumber , Ps_starttime ,Ps_endtime, Ps_psno , Ps_wpno)3.2.2 模型分析关系模式Factory,Workshop,Worker,Parts,Product,Warehous,Product_storage Parts_storage,Product_producing,Parts_producing不存在非主属性对主属性的部分函数依赖,也不存在传递函数依赖,已经达到了3NF.3.2.3 用户子模式定义表3.1 用户子模式定义编号用户子模式(View)作用(共性:提供数据保密和安全保护机制)V-1Product_information用于对产品信息的查询V-2Parts_information用于对零件信息的查询表3.2 产品信息视图列名数据类型可否为空说明PtnoVarchar(20)not null产品号PtnameVarchar(20)not null产品名Ptpricenumeric(10,1)产品价格Parts_noVarchar(20)not null产品所需零件的零件号Parts_numberint产品所需零件的数量Ptst_wenoVarchar(20)not null产品所存放的仓库Ptst_ptnumberint存放的数量Pp_ptnumberInt预计要生产的数量Pp_starttimeDatetime开始生产的时间Pp_endtimeDatetime结束生产的时间Pp_wpnoVarchar(20)not null生产车间表3.2 零件信息视图列名数据类型可否为空说明PsnoVarchar(20)not null零件号Psweightnumeric(10,1)零件重量Ptpricenumeric(10,1)零件价格Psst_wenoVarchar(20)not null零件所存放的仓库Psst_psnumberint存放的数量Ps_psnumberInt预计要生产的数量Ps_starttimeDatetime开始生产的时间Ps_endtimeDatetime结束生产的时间Ps_wpnoVarchar(20)not null生产车间第四章 物理设计阶段4.1物理设计阶段的目标与任务数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段中要完成两大任务:(1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;(2)对物理结构进行评价,评价的重点是时间和空间效率。4.2数据存储方面为数据库中各基本表建立的索引如下:由于基本表Product,Parts的主码Ptno,Psno经常在查询条件和连接操作的连接条件,出现,且它们的值唯一,在两个属性上建立唯一性索引;第五章 数据库实施阶段5.1建立数据库、数据表、视图、索引5.1.1 建立数据库create database Factoryon primary(name=factory_data,filename=d:xcmFactory.mdf,size=50MB,maxsize=70MB,filegrowth=1MB)log on(name=factory_log,filename=d:xcmFactory.ldf,size=10MB,maxsize=15MB,filegrowth=1MB)5.1.2 建立数据表(1)建立工厂表create table Factory( Fyname varchar(20) not null, Fy_Dname varchar(20) not null, primary key(Fyname,Fy_Dname), );(2)建立车间表create table Workshop( Wpno varchar(20)primary key, Wp_Dname varchar(20) not null, Wp_Dphonenubmer varchar(20) not null, Wp_Daddress varchar(20) not null,);(3)建立工人表create table Worker( Wrno varchar(20) primary key, Wrname varchar(20)not null, Wrage int null, Wrsex varchar(2) check(Wrsex in (男,女), Wrtypes varchar(20), Wr_workshop varchar(20)not null, foreign key(Wr_workshop)references Workshop(Wpno)on delete cascade on update cascade);(4)建立零件表create table Parts( Psno varchar(20)primary key, Psprice numeric(10,1)default 0, check(Psprice=0), Psweight numeric(10,1)default 0, check(Psweight=0),);(5)建立产品表create table Product( Ptno varchar(20)primary key, Ptname varchar(20)not null, Ptprice numeric(10,1) default 0, check(Ptprice=0), Parts_no varchar(20)not null, Parts_number int default 0, foreign key(Parts_no)references Parts(Psno)on delete cascade on update cascade); (6)建立仓库表create table Warehous( Weno varchar(20) primary key, We_Dname varchar(20), We_phonenumber varchar(20);(7)建立产品储存表create table Product_storage( Ptst_weno varchar(20), Ptst_ptnumber int, Ptst_ptno varchar(20), primary key(ptst_weno,ptst_ptno), foreign key(Ptst_weno)references Warehous(Weno) on delete cascade on update cascade, foreign key(Ptst_ptno)references Product(Ptno) on delete cascade on update cascade);(8)建立零件储存表create table Parts_storage( Psst_weno varchar(20), Psst_psnumber int, Psst_psno varchar(20), primary key(psst_weno,psst_psno), foreign key(Psst_weno)references Warehous(Weno) on delete cascade on update cascade, foreign key(Psst_psno)references Parts(Psno)on delete cascade on update cascade,);(9)建立产品生产表create table Product_producing( Pp_ptnumber int, Pp_starttime datetime, Pp_endtime datetime, Pp_ptno varchar(20)primary key, Pp_wpno varchar(20), foreign key(Pp_ptno)references Product(Ptno) on delete cascade on update cascade, foreign key(Pp_wpno)references Workshop(Wpno)on delete cascade on update cascade);(10)建立零件生产表create table Parts_producing( Ps_psnumber int, Ps_starttime datetime, Ps_endtime datetime, Ps_psno varchar(20), Ps_wpno varchar(20), primary key(ps_wpno,ps_psno), foreign key(Ps_psno)references Parts(Psno)on delete cascade on update cascade, foreign key(Ps_wpno)references Workshop(Wpno) on delete cascade on update cascade);5.1.3 建立视图(1)建立产品信息视图create view Product_informationas select Ptno,Ptname,Ptprice,Parts_no,Parts_number,Ptst_weno,Ptst_ptnumber,Pp_ptnumber, Pp_starttime ,Pp_endtime,Pp_wpnofrom Product_storage,Product,Product_producingwhere Product.Ptno=Product_producing.Pp_ptno and Product.Ptno=Product_storage.Ptst_ptno(2)建立零件信息视图create view Parts_informationas select Psno Psweight,Psprice,Psst_weno,Psst_psnumber,Ps_psnumber,Ps_starttime ,Ps_endtime,Ps_wpnofrom Parts_storage,Parts,Parts_producingwhere Parts.Psno=Parts_producing.Ps_psno and Parts.Psno=Parts_storage.Psst_psno5.1.4 建立索引create unique index Ptno on Product(Ptno);create unique index Psno on Parts(Psno);5.1.5 建立触发器(1)在Workshop上建立触发器Workshop_delete,当删除表Workshop中的记录时,相应的删除在表Worker中的记录create trigger Workshop_deleteon Workshopfor deleteas delete Workerfrom deletedwhere Worker.Wr_workshop=deleted.Wpno;(2)在Workshop上建立触发器Workshop_delete1,当删除表Workshop中的记录时,相应的删除在表Product_producing中的记录create trigger Workshop_delete1on Workshopfor deleteas delete Product_producingfrom deleted1where Product_producing.Pp_wpno=deleted1.Wpno;(3)在Workshop上建立触发器Workshop_delete2,当删除表Workshop中的记录时,相应的删除在表Parts_producing中的记录create trigger Workshop_delete2on Workshopfor deleteas delete Parts_producingfrom deleted1where Parts_producing.Ps_wpno=deleted1.Wpno;(4) 在Warehous上建立触发器Warehous _delete,当删除表Warehous中的记录时,相应的删除在表Product_storage中的记录create trigger Warehous_deleteon Warehousfor deleteas delete Product_storagefrom deletedwhere Product_storage.Ptst_weno=deleted.Weno;(5) 在Warehous上建立触发器Warehous _delete1,当删除表Warehous中的记录时,相应的删除在表Parts_storage中的记录create trigger Warehous_delete1on Warehousfor deleteas delete Parts_storagefrom deletedwhere Parts_storage.Psst_weno=deleted.Weno;(6) 在Parts上建立触发器Parts _delete,当删除表Parts中的记录时,相应的删除在表Product中的记录create trigger Parts_deleteon Partsfor deleteas delete Productfrom deletedwhere Product.Parts_no=deleted.Psno;5.1.6 数据库备份与恢复备份backup database Factoryto disk=D:xcmFactory_full_2010519.bak; 恢复:restore filelistonly from disk = D:xcmFactory_full_2010519.bakrestore database dy_Factory from disk = D:xcmFactory_full_2010519.bak with move Factory tO D:xcmdy_Factory.mdf, move Factory_log tO D:xcmdy_Factory.ldf5.1.7 创建登录名、用户以及授予用户权限execute sp_addlogin dayao,123456 use Factorygoexecute sp_grantdbaccess dayao,dy grant select on Worker to dy5.2数据入库通过插入语句把数据插入到相应的表中。5.3创建各个功能的存储过程系统共创建了10个存储过程,具体列表如下:表5.1 创建的存储过程列表:编号存储过程名称定义作用P-1Warehous_Insert见附录1-1在Warehous中插入一元组P-2Product_Insert见附录1-2在Product_Insert中插入一元组P-3Workshop_Insert见附录1-3在Workshop_Insert中插入一元组P-4Worker_Insert见附录1-4在Worker_Insert中插入一元组P-5Parts_Insert见附录1-5在Parts_Insert中插入一元组P-6Product_storage_Insert见附录1-6在Product_storage_Insert中插入一元组P-7Parts_storage_Insert见附录1-7在Parts_storage_Insert中插入一元组P-8Product_producing_Insert见附录1-8在Product_producing_Insert中插入一元组P-9Parts_producing_Insert见附录1-9在Parts_producing_Insert中插入一元组 第六章 设计总结这次课程设计是我进入大学以来的第四个课程设计,也是第一个数据库课程设计,在老师刚给我们题目的时候,我有点点的茫然,不知道从何开始下手,甚至自己心里有点点的急躁。通过向老师请教,和向学长学习,并在网上搜索一些相关的资料,逐渐地对数据库的课程设计有了相当的了解。老师一共给了4个题目,难度梯度依次降低。就我而言,可能通过这个学期的对数据库的学习,还没有把数据库的知识把握到位,所以选择了第一个工厂管理系统,难度相对其他较大一点,我希望通过这次的课程设计,能让自己把这方面的知识把握的更加的到位。设计刚开始时候,我就忙于写论文,而忽略了课程设计的核心,也就是设计一个工厂的管理系统,从而自己思路全无,而又急功近利,导致自己变的异常的心不在焉,看到同学们的管理系统的模型已经颇有几分成色了,而自己还是在起跑点,现在回想起来,让我感动诧异的是,我非但没有一丝丝的着急,反而有种莫名的自负感,觉得自己这个东西只要几个小时就能完成似的,结果当然是时间稍纵即逝,而自己的设计一拖再拖。还好,在关键的时候,自己还是能够把握自己,能够驾驭自己懒惰的心理,开始认认真真的做课程设计,从需求分析,再到概念分析,一步一步来,每一个阶段都用心去实现。当然,其中也遇到过很多麻烦,但是通过询问老师和同学讨论,还是顺利的完成了既定的目标,而自己在这其中也受益良多。从这次课程设计当中,看到了自己很多方面的不足,比如专业知识不到位,情绪波动较大,有时候很难控制自己的情绪。所以以后应当在自制能力方面更好的锻炼自己,同时应当巩固专业知识。参考文献1 萨师煊 王珊,数据库系统概论(第三版),北京:高教出版社,20002 Delpehi数据库开发毕业设计指导及实例;机械工业出版社,2004附录1 存储过程定义(1) Warehous_Insert 的定义CREATE PROCEDURE Warehous_InsertWeno varchar(20) ,We_Dname varchar(20),We_phonenumber varchar(20),asinsert into Warehousvalues(Weno,We_Dname,We_phonenumber);(2)Product_Insert的定义CREATE PROCEDURE Product_InsertPtno varchar(20),Ptname varchar(20),Ptprice numeric(10,1),Parts_no varchar(20),Parts_number intasinsert into Productvalues(Ptno,Ptname,Ptprice,Parts_no,Parts_number);(3)Workshop_Insert的定义CREATE PROCEDURE Workshop_InsertWpno varchar(20),Wp_Daddress varchar(20),Wp_Dphonenubmer varchar(20),Wp_Dname varchar(20)asinsert into Workshopvalues(Wpno,Wp_Daddress,Wp_Dphonenubmer,Wp_Dname);(4)Worker_Insert 的定义CREATE PROCEDURE Worker_InsertWrno varchar(20),Wrrypes varchar(20),Wr_workshop varchar(20),Wrname varchar(20),Wrsex varchar(2),Wrage intasinsert into Workervalues(Wrno,Wrrypes,Wr_workshop,Wrname,Wrsex,Wrage);(5)Parts_Insert的定义CREATE PROCEDURE Parts_InsertPsno varchar(20),Psweight numeric(10,1),Psprice numeric(10,1)asinsert into Partsvalues(Psno,Psweight,Psprice);(6)Product_storage_Insert的定义CREATE PROCEDURE Product_storage_InsertPtst_weno varchar(20),Ptst_ptnumber int, Ptst_ptno varchar(20)asinsert into Product_storagevalues(Ptst_weno,Ptst_ptnumber,Ptst_ptno);(7)Parts_storage_Insert的定义CREATE PROCEDURE Parts_storage_InsertPsst_weno varchar(20),Psst_psnumber int, Psst_psno varchar(20)asinsert into Parts_storagevalues(Psst_weno,Psst_psnumber,Psst_psno);(8)Product_producing_Insert的定义CREATE PROCEDURE Product_producing_InsertPp_ptnumber int,Pp_starttime datetime, Pp_endtime datetime,Pp_ptno varchar(20),Pp_wpno varchar(20)asinsert into Product_producingvalues(Pp_ptnumber,Pp_starttime,Pp_endtime,Pp_ptno,Pp_wpno);(9)Parts_producing_Insert的定义CREATE PROCEDURE Parts_producing_InsertPs_psnumber int,Ps_starttime datetime, Ps_endtime datetime,Ps_psno varchar(20),Ps_wpno varchar(20)asinsert into Parts_producingvalues(Ps_psnumber,Ps_starttime,Ps_endtime,Ps_psno,Ps_wpno);附录2 数据查看和存储过程功能的验证1.基本表的数据查看:在这里只列出两个基本表的查看:图1-1 Product表查询结果图1-2 Worker表查询结果2.存储过程功能的验证:在这里只列出一个存储过程:图1-3 Warehous开始的信息图1-4 通过存储过程插入信息后的信息列表3触发器功能的验证:图1-5 表workshop、Product_producing、Parts_producing的信息图1-6 删除操作后表workshop、Product_producing、Parts_producing的信息
展开阅读全文