SQLServer存储过程中事务的使用方法
本文为大家分享了SQLServer存储过程中事务的使用方法,具体代码如下
createprocusp_Stock @GoodsIdint, @Numberint, @StockPricemoney, @SupplierIdint, @EmpIdint, @StockUnitvarchar(50), @StockDatedatetime, @TotalMoneymoney, @ActMoneymoney, @baseIdint, @Descriptionnvarchar(255) as declare@errorint=0--事务中操作的错误记录 --开启事务 begintransaction --实现进货信息的添加 insertintoStockInfovalues(@GoodsId,@Number,@StockPrice,@SupplierId,@EmpId,@StockUnit,@StockDate,@TotalMoney,@ActMoney,DEFAULT,@Description,@baseId) set@error+=@@ERROR--记录有可能产生的错误号 --获取当前进货信息的标识列 --判断当前商品有没有进货记录 ifexists(select*fromdbo.InventoryInfowheregoodid=@GoodsId)--说明记录存在,直接修改库存数量 begin updatedbo.InventoryInfosetGNumber=GNumber+@Number,TotalMoney+=@TotalMoneywheregoodid=@GoodsId set@error+=@@ERROR--记录有可能产生的错误号 end else--这个商品从来没有过进货记录,那么就应该添加新的存在信息 begin declare@GWarningNumint--此商品的预警数量 --获取预警数量 set@GWarningNum=(selectWaringNumfromdbo.GoodsInfowhereGId=@GoodsId) insertintodbo.InventoryInfovalues(@GoodsId,@Number,@baseId,@GWarningNum,@TotalMoney,'第一次进货',default) set@error+=@@ERROR--记录有可能产生的错误号 end --判断事务的提交或者回滚 if(@error<>0) begin rollbacktransaction return-1--设置操作结果错误标识 end else begin committransaction return1--操作成功的标识 end go
希望本文所述对大家学习数据库操作有所帮助。
热门推荐
10 五一公司放假祝福语简短
11 追星女孩的祝福语简短
12 给长辈端午祝福语 简短
13 生日祝福语有诗意简短
14 团圆日祝福语简短
15 中秋商务祝福语简短最新
16 温暖文艺简短祝福语短句
17 男孩上学祝福语简短的
18 入住酒店文案祝福语简短