ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:593.75KB ,
资源ID:2935109      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2935109.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库技术与应用大作业.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库技术与应用大作业.docx

1、数据库技术与应用大作业数据库技术与应用大作业题目:数据库应用系统的设计和实现适用专业: 控制类 指导老师: 熊永华 班级: 控制0813班 姓名: 宦瑞坤 学号: 0909082807 中南大学信息科学与工程学院2009年12月1 需求说明这里要实现一个企业库存管理系统,为简单起见,在此库存系统中只涉及对出库、入库和库存货品的管理。要求此系统能够记录企业的入库、出库的情况以及零售商、供应商、库存货品的基本信息,具体要求为:(1)一种货品可由多名供应商提供、可由多名零售商采购;(2)一个供应商可以供应多种货品;(3)一个零售商可以购买多种货品;数据库中要记录企业的入库、出库的情况以及零售商、供应

2、商、库存货品的基本信息。除了对这些数据进行正常的维护之外,还产生一些报表:入库报表,内容包括货品名称、数量、计量单位、金额、供应商名称、电话、入库日期。出库报表,内容包括货品名称、数量、计量单位、金额、零售商名称、电话、出库日期。库存报表,内容包括货品名称、数量、计量单位。2 数据库结构设计2.1 概念结构设计对于这个企业库存管理系统,其核心活动是货品,库存货品与供应商之间是通过供应发生联系的,库存货品与零售商之间是通过购买发生联系的,因此,此系统所包含的实体有:(1)库存货品:用于描述一种货品的基本信息,用货品编号来标识此实体;(2)供应商:用于描述一个供应商的基本信息,由供应商编号来标识;

3、(3)零售商:用于描述一个零售商的基本信息,由零售商编号来标识;其初步E-R图如下:经过初步分析,可知此系统中各实体所包含的基本属性为:库存货品:货品编号、货品名称、数量、计量单位;供应商:供应商编号、供应商名称、联系人、电话;零售商:零售商编号、零售商名称、联系人、电话。2.2 逻辑结构设计第一步:有了基本E-R图后,就可以进行逻辑结构设计了,也就是设计基本的关系模型。设计基本关系模式主要是从E-R图出发,将其直接转换为关系模式。根据转换规则,这个E-R图转换的关系模式为:库存货品(货品编号、货品名称、数量、计量单位),主码为货品编号;供应商(供应商编号、供应商名称、联系人、电话),主码为供

4、应商编号;零售商(零售商编号、零售商名称、联系人、电话),主码为零售商编号;供应(供应商编号、货品编号、货品名称、数量、计量单位、单价、金额、入库日期),主码为(供应商编号、货品编号);购买(零售商编号、货品编号、货品名称、数量、计量单位、单价、金额、出库日期),主码为(零售商编号、货品编号)。第二步:在设计好了关系模式并确定好了每个关系模式的主码后,再看一下这些关系模式之间的关联关系,即确定关系模式的外码,可通过E-R图中的联系实体发现:供应关系中,供应商编号、货品编号是外码,分别引用供应商关系中的供应商编号和库存货品关系中的货品编号;购买关系中,零售商编号、货品编号是外码,分别引用零售商关

5、系中的零售商编号和库存货品关系中的货品编号;第三步:最后,确定表中各属性的详细信息,包括数据类型和长度等:(1) 库存信息表(库存货品表):货品编号:int(4),primary key货品名称:char(10), not null数量:numeric(9),not null计量单位:char(5),not null(2) 供应商信息表:供应商编号:int(4),primary key供应商名称:char(10)联系人:char(10),not null电话:char(20),not null(3) 零售商信息表:零售商编号:int(4),primary key零售商名称:char(10)联系

6、人:char(10),not null电话:char(20),not null(4) 入库信息表(供应信息表):供应商编号:int(4),foreign key货品编号:int(4), foreign key货品名称:char(10), not null数量:numeric(9),not null计量单位:char(5),not null单价:money(8),not null金额:money(8),not null入库日期:datetime(8),not null(5) 出库信息表(购买信息表):零售商编号:int(4),foreign key货品编号:int(4), foreign key

7、货品名称:char(10), not null数量:numeric(9),not null计量单位:char(5),not null单价:money(8),not null金额:money(8),not null出库日期:datetime(8),not null第四步:在SQL Server2000中建立上述表,并确定表和表之间的约束关系:主码、外码、规则、默认等;在企业管理器中建立库存信息表(库存货品表),并设置货品编号为主键,建立供应商信息表,并设置供应商编号为主键,建立零售商信息表,并设置零售商编号为主键,建立入库信息表(供应信息表),并设置供应商编号与货品编号为外键,建立出库信息表(购

8、买信息表),并设置零售商编号与货品编号为外键。规则:数量必须为非负数创建规则sl_scopeCreate rule sl_scope as sl_scope=0并将该规则绑定到库存信息表、入库信息表、出库信息表, 默认:计量单位的默认值为个创建默认jl_wei Create default jl_wei as 个并将该默认绑定到库存信息表、入库信息表、出库信息表, 第五步:报表的设计(视图的设计)在数据库应用系统中,用户需要产生大量的报表,而报表的内容来自于数据库中的基本表,因此,在设计好数据库的基本表之后,要看一下这些基本表的内容是否全部包含了要产生的报表的内容。入库报表:货品名称、数量、计

9、量单位、金额、供应商名称、电话、入库日期。出库报表:货品名称、数量、计量单位、金额、零售商名称、电话、出库日期。库存报表,内容包括货品名称、数量、计量单位。3 数据库行为功能设计3.1 安全控制任何数据库应用系统都需要安全控制功能,教学管理系统用户分为如下几类:(1)管理员:有系统的全部权限;(2)采购部:具有对入库信息表、供应商信息表的维护权,对各表数据的查询权;(3)销售部:具有对出库信息表、零售商信息表的维护权,对各表数据的查询权;(4)普通部:对各表数据的查询权。在实现时,每一类用户作为一个角色实现,这样在授权时,只对角色授权,而无需对每个具体的用户授权。3.2 数据操作数据操作功能包

10、括对这些数据进行录入、删除、修改功能。(1) 数据录入供应商数据录入:输入数据并显示出来入库信息录入:输入数据并显示出来零售商信息录入:输入数据并显示出来出库信息录入:输入数据并显示出来(2) 数据删除将指定编号的供应商信息删除,显示剩余的信息:将指定编号的入库信息删除,显示剩余的信息:将指定编号的零售商信息删除,显示剩余的信息:将指定编号的出库信息删除,显示剩余的信息:(3)数据修改供应商信息修改:输入供应商编号,输入修改的电话入库信息修改:输入供应商编号与货品编号,输入修改的数量零售商信息修改:输入零售商编号,输入修改的电话出库信息修改:输入零售商编号与货品编号,输入修改的数量(3) 数据

11、查询查询入库信息:输入供应商编号与货品编号查询信息查询供应商信息:输入供应商编号查询信息查询出库信息:输入零售商编号与货品编号查询信息查询零售商信息:输入零售商编号查询信息查询库存信息:输入货品编号查询库存信息3.3 生成报表入库报表查询:出库报表查询:库存报表查询:3.5 触发器设计 入库信息表的触发器设计:当入库信息表中输入一条信息,根据信息的货品编号判断,如果库存信息表中没有该货品,则在库存信息表中添加这条信息的数据;若库存信息表中存在该货品,则将该货品库存信息表中的数量加上入库信息表输入信息的数量。其中,用到了游标指针检测库存信息表中有无输入的货品编号。CREATE TRIGGER t

12、rig_1 ON dbo.入库信息表 FOR INSERT ASdeclare 货品编号 char(10)begindeclare kc_cursor cursor for select 货品编号 from 库存信息表open kc_cursor fetch next from kc_cursor into 货品编号 begin while fetch_status=0 if(货品编号=(select 货品编号 from inserted) begin update 库存信息表 set 数量=数量+(select 数量 from inserted) where 货品编号=货品编号 break

13、end else fetch next from kc_cursor into 货品编号 endif(fetch_status!=0) begin declare hpbh char(10),hpmc char(10),sl numeric(8) ,jldw char(5) select hpbh=货品编号 from inserted select hpmc=货品名称 from inserted select sl=数量 from inserted select jldw=计量单位 from inserted insert 库存信息表(货品编号,货品名称,数量,计量单位) values(hpb

14、h,hpmc,sl,jldw) endclose kc_cursordeallocate kc_cursorend出库信息表的触发器设计:当出库信息表中输入一条数据,则将该货品库存信息表中的数量减去出库信息表输入信息的数量。CREATE TRIGGER trig_2 ON dbo.出库信息表 FOR INSERT ASupdate 库存信息表set 数量=数量-(select 数量 from inserted)where 货品编号=(select 货品编号 from inserted)附件部分重要源代码:begin if messagedlg(确认修改,mtconfirmation,mbyes,mbno,0)=mryes thenbeginadoquery1.Close;adoquery1.SQL.clear;adoquery1.SQL.Add(update 出库信息表 set 数量=+Edit3.text );adoquery1.SQL.Add(where 零售商编号=+edit1.Text+ and 货品编号=+edit2.Text+);adoquery1.SQL.Add(select * from 出库信息表 where 出库信息表.零售商编号=+edit1.Text+ and 出库信息表.货品编号=+edit2.Text+);adoq

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

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