亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

存儲過程之銷售同時修改倉庫

系統(tǒng) 2921 0


--? 建立倉庫表
IF(EXISTS(SELECT name FROM SYSOBJECTS WHERE NAME='倉庫' AND TYPE='U'))
?DROP TABLE 倉庫
GO

CREATE TABLE 倉庫
(
?玩具號 NVARCHAR(20) PRIMARY KEY,
?庫存 INT,
?平均單價 FLOAT(8)
)
GO

-- 向倉庫表中添加數(shù)據(jù)
INSERT 倉庫 VALUES('12-1',100,50)
INSERT 倉庫 VALUES('12-2',80,80)
INSERT 倉庫 VALUES('12-3',60,100)
GO

-- 創(chuàng)建銷售表
IF(EXISTS(SELECT NAME FROM SYSOBJECTS WHERE NAME='銷售' AND TYPE='U'))
?DROP TABLE 銷售
GO

CREATE TABLE 銷售
(?
?SqlID INT IDENTITY(1,1) PRIMARY KEY,
?玩具號 NVARCHAR(20),
?數(shù)量 INT,
?銷售單價 FLOAT(8)
)
GO

-- 創(chuàng)建存儲過程
IF(EXISTS(SELECT NAME FROM SYSOBJECTS WHERE NAME='SP_INSERTSALE' AND TYPE='P'))
?DROP PROC SP_INSERTSALE
GO
CREATE PROC SP_INSERTSALE
?@toyID nvarchar(20),
?@toyquantity int,
?@toyprice float(8)
AS
DECLARE @tempquantity int?--臨時變量,用于保存庫存?
DECLARE @tempprice float(8)?--臨時變量,用于保存原始平均單價
DECLARE @tempSum float(8)?--臨時變量,用于保存原始總成本
DECLARE @insError int??--此變量用于保存插入時返回的@@ERROR值
DECLARE @upError int??--此變量用于保存更新時返回的@@ERROR值
BEGIN
?IF(EXISTS(SELECT * FROM 倉庫 WHERE 玩具號 =@toyid ))
??BEGIN?
???SELECT @tempprice=平均單價 FROM 倉庫 WHERE 玩具號 =@Toyid
???SELECT @tempquantity=庫存 FROM 倉庫 WHERE 玩具號 =@Toyid
???IF @tempquantity>=@toyquantity
????BEGIN
?????BEGIN TRAN
?????INSERT 銷售(玩具號,數(shù)量,銷售單價) VALUES(@toyid,@toyquantity,@toyprice)
?????SELECT @InsError=@@ERROR
?????SELECT @tempSum=@tempquantity*@tempprice-@toyquantity*@toyprice
?????SELECT @tempprice=@tempSum/(@tempquantity-@toyquantity) FROM 銷售 WHERE 玩具號 =@toyid
?????UPDATE 倉庫 SET 庫存 =@tempquantity-@toyquantity ,平均單價 =@tempprice WHERE 玩具號 =@toyid
?????SELECT @upError=@@Error
?????IF @InsError=0 AND @upError=0
??????BEGIN
???????COMMIT TRAN
???????PRINT '操作成功!'??
??????END
?????ELSE
??????BEGIN
???????ROLLBACK TRAN
???????PRINT '操作失敗!'?
??????END?
?????
????END
???ELSE
????PRINT '數(shù)量不夠!'
??END
?ELSE
???PRINT '沒有這樣的貨!'
END
GO

EXEC SP_INSERTSALE '12-3',120,20
GO
-- 數(shù)量不夠

EXEC SP_INSERTSALE '12-4',20,20
GO
-- 沒有這樣的貨

EXEC SP_INSERTSALE '12-1',20,55
GO

-- (所影響的行數(shù)為 1 行)
--
--
-- (所影響的行數(shù)為 1 行)
--
-- 操作成功
SELECT * FROM 倉庫
GO
SELECT * FROM 銷售
GO

存儲過程之銷售同時修改倉庫


更多文章、技術交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 毛片一区| 国产三级做爰高清视频a | 毛片.com| 在线观看中文字幕亚洲 | 激情综合色综合啪啪开心 | 国产精品99在线观看 | 伊人99热| 久久伊伊香蕉综合精品 | 五月婷婷色网 | 特黄级 | 国内精品免费 | 日韩免费在线观看 | www.射.com| 欧美日韩色黄大片在线视频 | 欧美久久精品一级c片片 | 一二三区免费视频 | 手机看片国产精品 | 日本一级片在线观看 | 国产精品久久亚洲不卡动漫 | 亚洲免费视频播放 | 久草热视频 | 亚洲乱码一区二区三区国产精品 | 亚洲一区二区三区麻豆 | 九色最新网址 | 天天综合网天天做天天受 | 欧美精品免费在线 | 在线欧美69v免费观看视频 | 久久精品中文字幕免费 | 日日夜夜操天天干 | 7777精品久久久大香线蕉 | 黄色片网站观看 | 九九精品视频在线观看九九 | 欧美激情久久久久久久大片 | 天天舔天天爽 | 成人一区二区免费中文字幕 | 久久ri精品高清一区二区三区 | 亚洲一级毛片视频 | 99视频在线观看高清 | 欧美在线视频网 | 国产亚洲精品成人a在线 | 可以直接看的毛片 |