每日农产品价格行情管理系统文档格式.docx

上传人:b****3 文档编号:16953175 上传时间:2022-11-27 格式:DOCX 页数:33 大小:191.04KB
下载 相关 举报
每日农产品价格行情管理系统文档格式.docx_第1页
第1页 / 共33页
每日农产品价格行情管理系统文档格式.docx_第2页
第2页 / 共33页
每日农产品价格行情管理系统文档格式.docx_第3页
第3页 / 共33页
每日农产品价格行情管理系统文档格式.docx_第4页
第4页 / 共33页
每日农产品价格行情管理系统文档格式.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

每日农产品价格行情管理系统文档格式.docx

《每日农产品价格行情管理系统文档格式.docx》由会员分享,可在线阅读,更多相关《每日农产品价格行情管理系统文档格式.docx(33页珍藏版)》请在冰豆网上搜索。

每日农产品价格行情管理系统文档格式.docx

1.

数据项

数据结构:

2.数据结构:

3.数据存储

五.数据库实现

1.数据库表定义

每日农产品价格管理系统

createdatabase每日农产品价格管理系统

供应商表(Supplier)

字段名

字段类型

长度

主键

字段值约束

对应中文名

SupID

varchar

10

P

Notnull

供应商编号

SupName

Varchar

25

供应商名称

Suparea

50

供应商地址

SupStyle

Int

供应商类型

SupPhone

20

Notnull

联系方式

SupPW

16

供应商密码

createtableSupplier

SupIDvarchar(10)notnullprimarykey,

SupNamevarchar(25)notnull,

SupAreavarchar(50)notnull,

SupStyleintnotnull,

SupPhonevarchar(20)notnull,

SupPWVarchar(16)notnull,

农产品信息表(ProductInfo)

ProductID

农产品编号

ProductStyle

农产品类别

ProductName

产品名称

ProductOrigin

产地

ProductPrice

Money

产品价格

DistID

销售商编号

createtableProductInfo

ProductIDvarchar(10)notnullprimarykey,

ProductStylevarchar(10)notnull,

ProductNamevarchar(50)notnull,

ProductOriginvarchar(20)notnull,

ProductPricemoneynotnull,

SupIDvarchar(10)notnullforeignkeyreferencesSupplier(SupID),

DistIDvarchar(10)notnullforeignkeyreferencesDistributer(DistID),

用户表(UserInfo)

UserID

用户编号

UserName

用户名称

UserPW

用户密码

UserStyle

用户类型

UserPhone

UserArea

用户地址

createtableUserInfo

UserIDvarchar(10)notnullprimarykey,

UserNamevarchar(25)notnull,

UserPWvarchar(16)notnull,

UserStyleintnotnull,

UserPhonevarchar(20)notnull,

UserAreavarchar(50)notnull,

销售商表(Distributer)

DistName

销售商名称

Distarea

销售商地址

DistStyle

销售商类型

DistPhone

DistPW

NotNull

销售商密码

createtableDistributer

DistIDvarchar(10)notnullprimarykey,

DistNamevarchar(25)notnull,

Distareavarchar(50)notnull,

DistStyleintnotnull,

DistPhonevarchar(20)notnull,

DistPWvarchar(16)notnull,

分类汇总表(C_Summery)

C_No

分类汇总编号

商品类型

商品名称

Higest_Price

最高价

Lowest_Price

最低价

Bulk_Price

大宗价

Ave_Price

平均价

createtableC_Summery

C_Novarchar(10)notnullprimarykey,

Higest_Pricemoneynotnull,

Lowest_Pricemoneynotnull,

Bulk_Pricemoneynotnull,

Ave_Pricemoneynotnull,

ProductIDvarchar(10)notnullforeignkeyreferencesProductInfo(ProductID),

2.数据库关系图

3.触发器的编写

1、CREATETRIGGERUserInfo_delete1

ONUserInfo

forDelete

ASbegin

deleteDistributer

fromDistributerdt,deletedd

wheredt.DistID=d.UserID

END

GO

/*在用户表中删除用户的同时将销售商表中对应的信息删除掉*/

2、CREATETRIGGERUserInfo_delete

deleteSupplier

fromSuppliersp,deletedd

wheresp.SupID=d.UserID

End

Go

/*在用户表中删除用户的同时将供应商表中的对应的信息删除掉*/

3、CREATETRIGGERUserInfo_insert

forinsert

AS

declare@UserIDvarchar(10),

@UserNameVarchar(25),

@UserPWVarchar(16),

@UserStyleInt,

@UserPhoneVarchar(20),

@UserAreaVarchar(50)

select@UserID=UserID,

@UserName=UserName,

@UserPW=UserPW,

@UserStyle=UserStyle,

@UserPhone=UserPhone,

@UserArea=UserArea

frominsertedwhereUserStyle='

001'

orUserStyle='

002'

begin

insertintoSupplier(SupID,SupName,SupPW,SupPhone,SupStyle,SupArea)

values(@UserID,@UserName,@UserPW,@UserPhone,@UserStyle,@UserArea)

/*当在用户表中插入的信息中“用户类型”为“001”或“002”时,在供应商表中插入相同的信息*/

4、CREATETRIGGERUserInfo_insert1

FrominsertedwhereUserStyle='

003'

004'

insertintoDistributer(DistID,DistName,DistPW,DistPhone,DistStyle,DistArea)

/*当在用户表中插入的信息中“用户类型”为“003”或“004”时,在销售商表中插入相同的信息*/

5、CREATETRIGGERUserInfo_update

ONUserInfo

forUPDATE

ifUpdate(UserID)

BEGIN

UpdateSupplier

setSupID=i.UserID

fromSuppliersp,deletedd,insertedi

/*在用户表更新用户信息时将供应商表中相应的信息进行同步更新*/

6、CREATETRIGGERUserInfo_update1

UpdateDistributer

setDistID=i.UserID

fromDistributerdt,deletedd,insertedi

wheredt.DistID=i.UserID

/*在用户表更新用户信息时将销售商表中相应的信息进行同步更新*/

7、CREATETRIGGERProduct_delete

ONProductInfo

deleteC_Summery

fromC_Summerycs,deletedd

wherecs.ProductName=d.ProductName

/*在用户表删除农产品信息时将汇总表中相应的信息进行删除*/

8、CREATETRIGGERProduct_update

ONProductInfo

forupdate

updateC_Summery

setProductName=i.ProductName

fromC_Summerycs,deletedd,insertedi

/*在用户表更新农产品信息时将汇总表中相应的信息进行同步更新*/

4.存储过程

概述:

以下所有的存储过程:

插入:

表示插入一条新记录(如果记录已经存在,则插入失败)。

修改:

表示修改一条记录(如果记录存在则修改,否则不能修改)

删除:

表示删除一条记录(如果记录存在则删除,否则不能删除在此,我没有考虑到级联关系,感觉删除这个过程用触发器做比较好,因此,删除应由触发器实现。

)。

查询:

表示查询记录(根据查询条件,显示相应的查询结果)

供应商表的存储过程:

1.插入(如果该记录号已经存在,则不能再插入)

Ifexists(selectnamefromsysobjectswherename='

add_Supplier'

Dropprocedureadd_Supplier

createprocedureadd_Supplier

@SupIDvarchar(10),

@SupNamevarchar(25),

@Supareavarchar(50),

@SupStyleint,

@SupPhonevarchar(20),

@SupPWvarchar(16)

As

Begintransaction

InsertintoSuppliervalues(@SupID,@SupName,@Suparea,@SupStyle,@SupPhone,@SupPW)

If(@@error!

=0)

Begin

Rollbacktransaction

Else

Committransaction

测试执行上述存储过程

Use每日农产品价格管理

Execadd_Supplier@SupID='

5'

@SupName='

2'

@Suparea='

3'

@SupStyle=12,@SupPhone='

4'

@SupPW='

123'

2.修改(根据记录号进行修改,如果记录号不存在则不能修改。

修改时,每个字段都不能为空,不然修改不了)

edit_Supplier'

Dropprocedureedit_Supplier;

Createprocedureedit_Supplier

UpdateSuppliersetSupName=@SupName,Suparea=@Suparea,SupStyle=@SupStyle,SupPhone=@SupPhone,SupPW=@SupPWwhereSupID=@SupID;

调用修改存储过程:

use每日农产品价格管理

Execedit_Supplier@SupID='

aa'

@SupStyle=10,@SupPhone='

123654'

@SupPW='

111'

3.删除(我只是做了个简单的对单个表的记录进行删除)

del_Supplier'

Dropproceduredel_Supplier;

Createproceduredel_Supplier

@SupIDvarchar(10)

DeletefromSupplierwhereSupID=@SupID

If(@@error!

调用删除存储过程:

Execdel_Supplier@SupID='

4.查询(根据查询条件,显示结果。

条件可以是多个字段的)

select_Supplier'

Dropprocedureselect_Supplier

go

Createprocedureselect_Supplier

Declare@wherevarchar(100)

Declare@sqlvarchar(150)

SET@where='

@@ERROR=0'

If(@SupID<

>

'

set@where=@where+'

and'

+'

SupID='

+@SupID

if(@SupName<

SupName='

+@SupName

if(@Suparea<

Suparea='

+@Suparea

if(@SupStyle<

SupStyle='

+CONVERT(VARCHAR(10),@SupStyle)

if(@SupPhone<

SupPhone='

+@SupPhone

if(@SupPW<

SupPW='

+@SupPW

set@sql='

Select*fromSupplierwhere'

+@where

PRINT'

+@sql

END

begintransaction

exec(@sql)

If(@@error<

0)

调用查询存储过程:

Execselect_Supplier@SupID='

@SupStyle='

12'

@SupPhone='

(×

×

表示具体值。

也可以为空,表示该字段没有要求)

农产品信息表的存储过程(ProductInfo)

1.插入(如果该记录号已经存在,则不能再插入)

add_ProductInfo'

Dropprocedureadd_ProductInfo;

Createprocedureadd_ProductInfo

@ProductIDvarchar(10),

@ProductStylevarchar(10),

@ProductNamevarchar(50),

@ProductOriginvarchar(20),

@ProductPriceMoney,

@DistIDvarchar(10)

InsertintoProductInfovalues(@ProductID,@ProductStyle,@ProductName,@ProductOrigin,@ProductPrice,@SupID,@DistID)

Rollba

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 其它模板

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

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