首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sql存储过程

sql存储过程
EN

Stack Overflow用户
提问于 2011-04-29 21:59:55
回答 2查看 94关注 0票数 0
代码语言:javascript
复制
create PROC insert_Items(@Store varchar(20),@ID varchar(20),@Name varchar(20),@IDate varchar(11))
As
Declare @UDates varchar(11),
Declare @Quantity int,
Declare @Defects int
Select  @Quantity  From inserted 
Select  @Defects  From Inserted
set @UDates = getdate(), 
     @Remanders = @Defects - @Quantity
Insert Items(StoreName,ProductID,ProductName,Quantity,Defects,InsertedDate,UpdatedDate)
Values(@Store,@ID,@Name,@Quantity,@Defects,@IDate,@UDates)

问题是我想要得到表l中余数的值。

EN

回答 2

Stack Overflow用户

发布于 2011-04-29 22:08:56

如果您的表已经包含一个剩余字段,则只需将其添加到INSERT语句中,如下所示:

代码语言:javascript
复制
    Insert Items(StoreName, ProductID, ProductName, Quantity, Defects, InsertedDate, UpdatedDate, Remainder) 
Values(@Store, @ID, @Name, @Quantity, @Defects, @IDate, @UDates, @Remainder)

更好的选择可能是使表中的Remainder列成为计算列。这样,即使数据不是通过您的存储过程添加的,您也将始终拥有该值。

票数 0
EN

Stack Overflow用户

发布于 2011-04-29 22:08:57

一般的做法是declare an OUTPUT parameter for the procedure。然后,调用者将获得该值作为参数。

例如

代码语言:javascript
复制
create proc outputdemo(@invalue int, @outvalue int output)
as
    set @outvalue = @invalue * 2
go

declare @myvalue int
exec outputdemo 10, @myvalue output
select @myvalue
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5833032

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档