📄 商品管理.sql
字号:
use DB_SMS
go
-----------------------------------------------------
--1. proc_getGoodsInfo
--功能:查询商品信息(商品编号, 商品名称, 商品类别, 商品单价)
--输入:商品编号, 商品名称, 商品类别名称
--输出:商品信息(TB_GOODSTYPE, TB_GOODS)
-----------------------------------------------------
if exists (select 1 from sysobjects where name = 'proc_getGoodsInfo')
drop procedure proc_getGoodsInfo
go
create procedure proc_getGoodsInfo
@gsId varchar(17) = '', --商品编号
@gsName varchar(30) = '', --商品名称
@gtName varchar(20) = '' --商品类型名称
as
if @gsId != ''
--根据商品编号查询商品信息
select gsId, gsName, gtName, gsPrice
from TB_GOODS_TYPE as gt, TB_GOODS as gs
where gt.gtId = gs.gtId and gsId like '%'+@gsId+'%'
else if @gsName != ''
--根据商品名称查询商品信息
select gsId, gsName, gtName, gsPrice
from TB_GOODS_TYPE as gt, TB_GOODS as gs
where gt.gtId = gs.gtId and gsName like '%'+@gsName+'%'
else if @gtName != ''
--根据商品类型名称查询商品信息
select gsId, gsName, gtName, gsPrice
from TB_GOODS_TYPE as gt, TB_GOODS as gs
where gt.gtId = gs.gtId and gtName like '%'+@gtName+'%'
else
--获取所有商品的信息
select gsId, gsName, gtName, gsPrice
from TB_GOODS_TYPE as gt, TB_GOODS as gs
where gt.gtId = gs.gtId
go
-----------------------------------------------------
--2. proc_addGoods
--功能:添加商品
--输入:商品编号, 商品名称, 商品类别名称, 商品单价
--输出:成功或失败信息(TB_GOODSTYPE, TB_GOODS)
-----------------------------------------------------
if exists (select 1 from sysobjects where name = 'proc_addGoods')
drop procedure proc_addGoods
go
create procedure proc_addGoods
@gsId varchar(17), --商品编号
@gsName varchar(30), --商品名称
@gtName varchar(20), --商品类型名称
@gsPrice int, --商品单价
@state int output --状态
as
begin transaction
declare @errorSum int --错误累计
set @errorSum = 0
--获取商品类型编号
declare @gtId varchar(17) --商品类型编号
select @gtId = gtId from TB_GOODS_TYPE where gtName = @gtName
--插入商品信息
insert into TB_GOODS values(@gsId, @gtId, @gsName, @gsPrice)
set @errorSum = @errorSum + @@error
if @errorSum <> 0
begin
--回滚事务
rollback transaction
set @state = 0
end
else
begin
--提交事务
commit transaction
set @state = 1
end
go
-----------------------------------------------------
--3. proc_updateGoods
--功能:修改商品
--输入:商品编号, 商品名称, 商品类别名称, 商品单价
--输出:成功或失败信息(TB_GOODSTYPE, TB_GOODS)
-----------------------------------------------------
if exists (select 1 from sysobjects where name = 'proc_updateGoods')
drop procedure proc_updateGoods
go
create procedure proc_updateGoods
@gsId varchar(17), --商品编号
@gsName varchar(30), --商品名称
@gtName varchar(20), --商品类型名称
@gsPrice int, --商品单价
@state int output --状态
as
begin transaction
declare @errorSum int --错误累计
set @errorSum = 0
--获取商品类型编号
declare @gtId varchar(17) --商品类型编号
select @gtId = gtId from TB_GOODS_TYPE where gtName = @gtName
--插入商品信息
update TB_GOODS set gtId = @gtId, gsName = @gsName, gsPrice = @gsPrice
where gsId = @gsId
set @errorSum = @errorSum + @@error
if @errorSum <> 0
begin
--回滚事务
rollback transaction
set @state = 0
end
else
begin
--提交事务
commit transaction
set @state = 1
end
go
-----------------------------------------------------
--4. proc_getGoodsInfoById
--功能:查询商品信息(商品编号)
--输入:商品编号
--输出:商品信息(TB_GOODSTYPE, TB_GOODS)
-----------------------------------------------------
if exists (select 1 from sysobjects where name = 'proc_getGoodsInfoById')
drop procedure proc_getGoodsInfoById
go
create procedure proc_getGoodsInfoById
@gsId varchar(17) --商品编号
as
--根据商品编号查询商品信息
select gsId, gsName, gtName, gsPrice
from TB_GOODS_TYPE as gt, TB_GOODS as gs
where gt.gtId = gs.gtId and gsId = @gsId
go
select * from TB_GOODS
select * from tb_goods_type
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -