版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库课程设计题目: 每日农产品价格行情管理系统 专 业: 信息管理与信息系统 班 级: 一、 系统需求分析 随着科学技术的发展,社会进步,计算机和互联网技术的迅速发展,信息的传播速度成倍加快。怎样才能迅速准确地掌握市场的最新动态、良好的货源和收购商成为了产品的商家和生产商在商场上立于不败之地的重要保证。农产品这一块也不例外,及时地掌握农产品的每日价格行情成为了农户和农产品批发商的迫切需求。每日农产品价格行情系统就是建立在这样一个基础上,为农户和农产品批发商建立一个了解农产品市场最新动态以及供求信息的平台。系统的主要功能1. 录入、修改和查询农产品的供求信息(主要是以各个产品的品种类别,产地来
2、划分的产品供求信息)2. 录入、更新和查询农产品的价格行情信息(上涨或是下跌)3. 给用户赋予权限和信息维护。2、 系统功能结构图功能结构图:每日农产品价格管理销售商基本信息管理农产品基本信息管理供应商基本信息管理分类统计汇总农产品价格信息管理添加信息修改信息查询信息删除信息平均价大宗价最低价最高价删除信息查询信息添加信息修改信息查询信息删除信息修改信息添加信息查询信息添加信息修改信息删除信息按平均价查询按最低价查询按最高价查询按地区查询按品种查询按地区查询按品种查询按地区查询按品种查询三、数据库设计1.系统ER图农户名地区电话农户编号农户供给量m地区供给时间供给零售商名零售商编号供应价格电话
3、联系人n产品编号产品类别农产品零售商产品名称产地mn批发时间n产品价格m批发批发商批发量进货进货时间批发价格进货量批发商编号电话进货价格批发商名联系人地区2.关系模式设计关系模式:农户:(农户编号,农户名,地区,电话) 农产品:(产品编号,产品类别,产品名称,产地) 批发商:(批发商编号,批发商店名,地区,电话,联系人) 零售商:(零售商编号,零售商店名,地区,电话,联系人)供给表(供给编号,农户编号,产品编号,供给量,供给时间,供给价格)进货表(进货编号,产品编号,批发商编号,进货量,进货时间,进货价格)批发表(批发编号,产品编号,批发商编号,零售商编号,批发量,批发时间,批发价格)四、数据
4、字典1. 数据项名字:SupID 说明:供应商编号,编码由三位字母和7位数字组成,其中前三位字母是供应商名字的首字母,7位数字是供应时间和序号的组合,如lzy2011001, 2011表示供应时间,001表示序号。类型:varchar长度:10 有关数据机构:供应商表 农产品信息表名字:SupName 说明:供应商的名称。类型:varchar长度:25 有关数据机构:供应商表名字:Suparea 说明:供应商的地址。类型:varchar长度:50 有关数据机构:供应商表名字:SupStyle 说明:供应商的类型,001代表农户,002代表承包商。类型:int长度:4 有关数据机构:供应商表名字
5、:SupPhon 说明:供应商的联系方式类型:varchar长度:20 有关数据机构:供应商表名字:SupPW 说明:供应商密码。类型:varchar长度:16 有关数据机构:供应商表名字:ProductID 说明:农产品信息编号,编码为2位字母加8位数字,其中2位字母是农产品的首字母,8位数字是农产品供应时间和序号的组合,如hg20110001,2011表示供应时间,0001表示序号类型:varchar长度:10 有关数据机构:农产品信息表 供应商表 用户表 销售商表 分类汇总表名字:ProductStyle 说明:农产品类别,前2位字母表示农产品的名称。类型:varchar长度:10 有关
6、数据机构:农产品信息表名字:ProductName 说明:农产品的名称。类型:varchar长度:50 有关数据机构:农产品信息表名字:ProductOrigin 说明:农产品的产地。类型:varchar长度:20 有关数据机构:农产品信息表名字:ProductPrice 说明:农产品的价格。类型:money长度:8 有关数据机构:农产品信息表名字:UserID 说明:用户编号,编码为3位字母加7位数字组成,其中三位字母是用户的首字母,7位数字是用户购买产品时间和序号的组合,如lzy2011001,2011表示购买时间,001表示序号,类型:varchar长度:10 有关数据机构:用户表 供应
7、商表 农产品信息表名字:UserName 说明:用户名称。类型:varchar长度:25 有关数据机构:用户表名字:UserPW 说明:用户的密码。类型:varchar长度:16 有关数据机构:用户表名字:UserStyle 说明:用户的类型。类型:int长度:4 有关数据机构:用户表名字:UserPhone 说明:用户 的联系方式。类型:varchar长度:20 有关数据机构:用户表名字:UserArea 说明:用户的地址。类型:varchar长度:50 有关数据机构:用户表名字:DistID 说明:销售商编号,编码为3位字母加7位数字组成,其中三位字母是销售商的首字母,7位数字是销售商购买
8、产品时间和序号的组合,如xss2011001,2011表示购买时间,001表示序号,类型:varchar长度:10 有关数据机构:销售商表 农产品信息表 用户表名字:DistName 说明:销售商名称。类型:varchar长度:25 有关数据机构:销售商表名字:Distarea说明:销售商的地址。类型:varchar长度:50 有关数据机构:销售商表名字:DistStyle 说明:销售商的类型,003代表批发商,004代表零售商。类型:int长度:4 有关数据机构:销售商表名字:DistPhone 说明:销售商联系方式。类型:varchar长度:20 有关数据机构:销售商表名字:DistPW说
9、明:销售商的密码类型:varchar长度:16 有关数据机构:销售商表名字:Cno说明:分类汇总编号类型:varchar长度:10 有关数据机构:分类汇总表 供应商表 农产品信息表 用户表 销售商表名字:ProductStytle说明:商品类型类型:varchar长度:10 有关数据机构:分类汇总表名字:ProductName说明:商品名称类型:varchar长度:16 有关数据机构:分类汇总表名字:Higest_Price说明:最高价类型:money长度:8 有关数据机构:分类汇总表名字:Lowest_Price说明:最低价类型:money长度:8 有关数据机构:分类汇总表名字:Bulk_P
10、rice说明:大宗价类型:money长度:8 有关数据机构:销售商表名字:Ave_Price说明:平均价类型:money长度:8 有关数据机构:分类汇总表数据结构:2.数据结构:名字:供应商表说明:供应商供应产品时登记的表 有关数据流、数据存储: 供应商表 结构:编号 农产品信息表 名称 地址 类型 联系方式 数量:每年约100份 密码名字:农产品信息表说明: 产品销售时登记的表 有关数据流、数据存储: 农产品信息表结构:编号 供应商表 类别 用户表 产地 销售商表 价格 分类汇总表 数量:每年约500份 名字:用户表说明:用户购买产品时登记的表 有关数据流、数据存储: 用户表结构:编号 供应
11、商表 名称 农产品信息表 密码 类型 联系方式 数量:每年约800份 地址名字:销售商表说明: 销售商销售产品时登记的表 有关数据流、数据存储: 销售商表 结构:编号 农产品信息表 名称 用户表 地址 类型 联系方式 数量:每年约300份 密码名字:分类汇总表说明:进行产品汇总时登记的表 有关数据流、数据存储: 分类汇总表结构:编号 供应商表 商品类型 农产品信息表 商品名称 用户表 最高价 销售商表 最低价 大宗价 数量:每年约1000份 平均价3.数据存储名字:供应商表说明:存储供应商的信息结构: SupID(编号) SupName(名称) Suparea(地址) SupStyle(类型)
12、 SupPhone(联系方式) SupPW(密码)名字:农产品信息表说明:存储农产品的信息结构: ProductID(编号) ProductStyle(类别) ProductName(名字) ProductOrigin(产地) ProductPrice(价格)名字:用户表说明:存储用户的信息结构: UserID(编号) UserName(名字) UserPW(密码) UserStyle(类别) UserPhone(联系方式) UserArea(地址)名字:销售商表说明:存储销售商的信息结构: DistID(编号) DistName(名称) Distarea(地址) DistStyle(类型)
13、DistPhone(联系方式) DistPW(密码)名字:分类汇总表说明:存储产品的各类信息结构: Cno(编号) ProductStyle(产品类型) ProductName(产品名称) Higest_Price(最高价) Lowest_Price(最低价) Bulk_Price(大宗价) Ave_Price(平均价)五数据库实现1. 数据库表定义每日农产品价格管理系统create database 每日农产品价格管理系统供应商表(Supplier)字段名字段类型长度主键字段值约束对应中文名SupIDvarchar10PNot null供应商编号SupNameVarchar25Not nul
14、l供应商名称SupareaVarchar50Not null供应商地址SupStyleIntNot null供应商类型SupPhoneVarchar20Not null 联系方式SupPWVarchar16Not null 供应商密码create table Supplier(SupID varchar(10) not null primary key,SupName varchar(25) not null,SupArea varchar(50) not null,SupStyle int not null,SupPhone varchar(20) not null,SupPW Varcha
15、r(16) not null,)农产品信息表(ProductInfo)字段名字段类型长度主键字段值约束对应中文名ProductIDvarchar10PNot null农产品编号ProductStyleVarchar10Not null农产品类别ProductNameVarchar50Not null产品名称ProductOriginVarchar20Not null产地ProductPriceMoneyNot null 产品价格SupIDvarchar10Not null供应商编号DistIDvarchar10Not null销售商编号create table ProductInfo(Prod
16、uctID varchar(10) not null primary key,ProductStyle varchar(10) not null,ProductName varchar(50) not null,ProductOrigin varchar(20) not null,ProductPrice money not null,SupID varchar(10) not null foreign key references Supplier(SupID),DistID varchar(10) not null foreign key references Distributer(Di
17、stID),)用户表(UserInfo)字段名字段类型长度主键字段值约束对应中文名UserIDvarchar10PNot null用户编号UserNameVarchar25Not null用户名称UserPWVarchar16Not null用户密码UserStyleIntNot null用户类型UserPhoneVarchar20Not null 联系方式UserAreaVarchar50Not null 用户地址create table UserInfo(UserID varchar(10) not null primary key,UserName varchar(25) not nul
18、l,UserPW varchar(16) not null,UserStyle int not null,UserPhone varchar(20) not null,UserArea varchar(50) not null,)销售商表(Distributer)字段名字段类型长度主键字段值约束对应中文名DistIDvarchar10PNot null销售商编号DistNameVarchar25Not null销售商名称DistareaVarchar50Not null销售商地址DistStyleIntNot null销售商类型DistPhoneVarchar20Not null 联系方式Di
19、stPWVarchar16Not Null销售商密码create table Distributer(DistID varchar(10) not null primary key,DistName varchar(25) not null,Distarea varchar(50) not null,DistStyle int not null,DistPhone varchar(20) not null,DistPW varchar(16) not null,)分类汇总表(C_Summery)字段名字段类型长度主键字段值约束对应中文名C_Novarchar10PNot null分类汇总编号P
20、roductStyleVarchar10Not null商品类型ProductNameVarchar50Not null商品名称Higest_PriceMoneyNot null最高价Lowest_PriceMoneyNot null最低价Bulk_PriceMoneyNot null 大宗价Ave_PriceMoneyNot null平均价ProductIDvarchar10Not null农产品编号create table C_Summery(C_No varchar(10) not null primary key,ProductStyle varchar(10) not null,Pr
21、oductName varchar(50) not null,Higest_Price money not null,Lowest_Price money not null,Bulk_Price money not null,Ave_Price money not null,ProductID varchar(10) not null foreign key references ProductInfo(ProductID),)2. 数据库关系图3. 触发器的编写1、CREATE TRIGGER UserInfo_delete1 ON UserInfo for DeleteAS begin d
22、elete Distributer from Distributer dt,deleted d where dt.DistID=d.UserIDEND GO/*在用户表中删除用户的同时将销售商表中对应的信息删除掉*/2、CREATE TRIGGER UserInfo_delete ON UserInfo for DeleteAS begin delete Supplier from Supplier sp,deleted d where sp.SupID=d.UserIDEndGo/*在用户表中删除用户的同时将供应商表中的对应的信息删除掉*/3、CREATE TRIGGER UserInfo_
23、insert ON UserInfo for insertAS declare UserIDvarchar(10), UserName Varchar(25), UserPW Varchar(16), UserStyleInt, UserPhoneVarchar(20), UserAreaVarchar(50) select UserID=UserID, UserName=UserName, UserPW=UserPW, UserStyle=UserStyle, UserPhone=UserPhone, UserArea=UserArea from inserted where UserSty
24、le='001'or UserStyle='002'begin insert into Supplier(SupID,SupName,SupPW,SupPhone,SupStyle,SupArea) values(UserID,UserName,UserPW,UserPhone,UserStyle,UserArea)EndGo/*当在用户表中插入的信息中“用户类型”为“001”或“002”时,在供应商表中插入相同的信息*/4、CREATE TRIGGER UserInfo_insert1 ON UserInfo for insertAS declare User
25、IDvarchar(10), UserName Varchar(25), UserPW Varchar(16), UserStyleInt, UserPhoneVarchar(20), UserAreaVarchar(50) select UserID=UserID, UserName=UserName, UserPW=UserPW, UserStyle=UserStyle, UserPhone=UserPhone, UserArea=UserArea From inserted where UserStyle='003'or UserStyle='004'be
26、gin insert into Distributer(DistID,DistName,DistPW,DistPhone,DistStyle,DistArea) values(UserID,UserName,UserPW,UserPhone,UserStyle,UserArea)EndGo/*当在用户表中插入的信息中“用户类型”为“003”或“004”时,在销售商表中插入相同的信息*/5、CREATE TRIGGER UserInfo_update ON UserInfofor UPDATEAS if Update(UserID) BEGIN Update Supplierset SupID=
27、i.UserIDfrom Supplier sp,deleted d,inserted iwhere sp.SupID=d.UserIDEndGo/*在用户表更新用户信息时将供应商表中相应的信息进行同步更新*/6、CREATE TRIGGER UserInfo_update1 ON UserInfofor UPDATEAS if Update(UserID) BEGIN Update Distributerset DistID=i.UserIDfrom Distributer dt,deleted d,inserted iwhere dt.DistID=i.UserIDEND Go/*在用户表
28、更新用户信息时将销售商表中相应的信息进行同步更新*/7、CREATE TRIGGER Product_delete ON ProductInfofor DeleteAS begin delete C_Summery from C_Summery cs,deleted d where cs.ProductName=d.ProductNameEND Go/*在用户表删除农产品信息时将汇总表中相应的信息进行删除*/8、 CREATE TRIGGER Product_update ON ProductInfofor updateAS begin update C_Summery set Product
29、Name=i.ProductName from C_Summery cs,deleted d,inserted i where cs.ProductName=d.ProductNameEND Go/*在用户表更新农产品信息时将汇总表中相应的信息进行同步更新*/4. 存储过程概述:以下所有的存储过程:插入:表示插入一条新记录(如果记录已经存在,则插入失败)。修改:表示修改一条记录(如果记录存在则修改,否则不能修改)删除:表示删除一条记录(如果记录存在则删除,否则不能删除在此,我没有考虑到级联关系,感觉删除这个过程用触发器做比较好,因此,删除应由触发器实现。)。查询:表示查询记录(根据查询条件,显
30、示相应的查询结果)供应商表的存储过程:1 插入 (如果该记录号已经存在,则不能再插入)If exists(select name from sysobjects where name ='add_Supplier')Drop procedure add_SupplierGOGOcreate procedure add_SupplierSupID varchar(10),SupName varchar(25),Suparea varchar(50),SupStyle int,SupPhone varchar(20),SupPW varchar(16)AsBegin transac
31、tionInsert into Supplier values (SupID,SupName,Suparea,SupStyle,SupPhone,SupPW)If(error!=0)BeginRollback transactionEndElsebegin Commit transactionEnd测试执行上述存储过程Use 每日农产品价格管理Exec add_Supplier SupID='5',SupName='2',Suparea='3',SupStyle=12,SupPhone='4' ,SupPW='123
32、9;2修改(根据记录号进行修改,如果记录号不存在则不能修改。修改时,每个字段都不能为空,不然修改不了)If exists(select name from sysobjects where name ='edit_Supplier')Drop procedure edit_Supplier ;GOCreate procedure edit_SupplierSupID varchar(10),SupName varchar(25),Suparea varchar(50),SupStyle int,SupPhone varchar(20),SupPW varchar(16)AsBe
33、gin transactionUpdate Supplier set SupName=SupName, Suparea=Suparea, SupStyle=SupStyle, SupPhone =SupPhone,SupPW=SupPW where SupID=SupID ;If(error!=0)BeginRollback transactionEndElsebegin Commit transactionEnd调用修改存储过程:use 每日农产品价格管理Exec edit_Supplier SupID='2',SupName='aa',Suparea=
34、9;aa',SupStyle=10,SupPhone='123654',SupPW='111'3.删除(我只是做了个简单的对单个表的记录进行删除)If exists(select name from sysobjects where name ='del_Supplier')Drop procedure del_Supplier ;GOCreate procedure del_SupplierSupID varchar(10)AsBegin transactionDelete from Supplier where SupID=SupID
35、 If(error!=0)BeginRollback transactionEndElsebegin Commit transactionEnd调用删除存储过程:use 每日农产品价格管理Exec del_Supplier SupID='4'4. 查询 (根据查询条件,显示结果。条件可以是多个字段的)If exists(select name from sysobjects where name ='select_Supplier')Drop procedure select_Supplier goCreate procedure select_Supplier
36、SupID varchar(10),SupName varchar(25),Suparea varchar(50),SupStyle int,SupPhone varchar(20),SupPW varchar(16)AsBeginDeclare where varchar(100)Declare sql varchar(150)SET where='ERROR=0'If(SupID<>'')set where=where+' and '+'SupID='+SupIDif(SupName<>'
37、9;)set where=where+' and '+'SupName='+SupNameif(Suparea<>'')set where=where+' and '+'Suparea='+Supareaif(SupStyle<>'')set where=where+' and '+'SupStyle='+CONVERT(VARCHAR(10),SupStyle)if(SupPhone<>'')set where=w
38、here+' and '+'SupPhone='+SupPhoneif(SupPW<>'')set where=where+' and '+'SupPW='+SupPWset sql='Select * from Supplier where '+wherePRINT ''+sqlENDbegin transactionexec (sql) If(error<>0)BeginRollback transactionEndElsebegin Commit tra
39、nsactionEnd调用查询存储过程:use 每日农产品价格管理Exec select_Supplier SupID='',SupName='',Suparea='',SupStyle='12', SupPhone='',SupPW=''(××表示具体值。也可以为空,表示该字段没有要求)农产品信息表的存储过程(ProductInfo)1插入(如果该记录号已经存在,则不能再插入)If exists(select name from sysobjects where name =&
40、#39;add_ProductInfo')Drop procedure add_ProductInfo ;GOCreate procedure add_ProductInfoProductID varchar(10),ProductStyle varchar(10),ProductName varchar(50),ProductOrigin varchar(20),ProductPrice Money,SupID varchar(10),DistID varchar(10)AsBegin transactionInsert into ProductInfo values (Produc
41、tID, ProductStyle, ProductName, ProductOrigin, ProductPrice,SupID,DistID)If(error!=0)BeginRollback transactionEndElsebegin Commit transactionEnd调用插入存储过程:use 每日农产品价格管理Exec add_ProductInfo ProductID='1',ProductStyle ='12',ProductName='12',ProductOrigin='12',ProductPrice
42、=122修改If exists(select name from sysobjects where name ='edit_ProductInfo')Drop procedure edit_ProductInfo ;GOCreate procedure edit_ProductInfoProductID varchar(10),ProductStyle varchar(10),ProductName varchar(50),ProductOrigin varchar(20),ProductPrice Money,SupID varchar(10),DistID varchar(
43、10)AsBegin transactionUpdate ProductInfo set ProductStyle =ProductStyle, ProductName = ProductName,ProductOrigin = ProductOrigin, ProductPrice =ProductPrice,SupID=SupID,DistID=DistID where ProductID=ProductID ;If(error!=0)BeginRollback transactionEndElsebegin Commit transactionEnd调用修改存储过程:use 每日农产品价
44、格管理Exec edit_ProductInfo ProductID='1',ProductStyle ='a',ProductName='a',ProductOrigin='a',ProductPrice =1003.删除If exists(select name from sysobjects where name ='del_ProductInfo')Drop procedure del_ProductInfoGOCreate procedure del_ProductInfoProductID varcha
45、r(10)AsBegin transactionDelete from ProductInfo where ProductID =ProductID If(error!=0)BeginRollback transactionEndElsebegin Commit transactionEnd调用修改存储过程:use 每日农产品价格管理Exec del_ProductInfo ProductID ='1'4. 查询If exists(select name from sysobjects where name ='select_ProductInfo')Drop
46、procedure select_ProductInfo ;GOCreate procedure select_ProductInfoProductID varchar(10),ProductStyle varchar(10),ProductName varchar(50),ProductOrigin varchar(20),ProductPrice Money,SupID varchar(10),DistID varchar(10)AsBeginDeclare where varchar(100);Declare sql varchar(150);Set where=' error=0 'If(ProductID!='')set where=where+' and '+'ProductID ='+ProductID ; if(ProductStyle!='')set where=w
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度风力发电设备采购合同担保服务3篇
- 2024版学校运动场施工合作合同版B版
- 2024年食材供应链管理合同2篇
- 2024年版:建筑消防排烟系统施工合同
- 2024铁路工程项目信息化建设合同样本3篇
- 2024年足浴城加盟协议3篇
- 2025年度窗帘行业发展趋势研究与预测合同3篇
- 工厂供配电技术
- 2024版建筑木工班组劳务合作协议
- 2025年度锅炉设备节能评估与咨询服务合同3篇
- 复旦大学普物B期末考试试卷
- 剪映教程PPT版本新版剪影零基础教学课程课件
- 小学语文低年级写话 鸽子
- GB/T 35223-2017地面气象观测规范气象能见度
- GB/T 24183-2009金属材料制耳试验方法
- 医院感染质量控制中心工作总结和计划课件
- 仁爱英语八年级上册词汇练习题全册
- 中共一大介绍
- 生产车间5s管理培训课件
- 监考要求、操作流程及指导语
- 腰椎骨折病人的护理ppt
评论
0/150
提交评论