使用UPDATE存储过程
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用UPDATE存储过程相关的知识,希望对你有一定的参考价值。
我目前正在尝试创建一个用于更新表的存储过程。我遇到了代码说它执行的问题,影响每一行但没有更新。我希望能够一次更新一行中的信息并让行实际更新。
代码如下:
CREATE PROCEDURE UpdateTrail
(@Open char(3),
@AmountReal int,
@AmountFake int)
AS
BEGIN
UPDATE TRAIL
SET @Open = TOpen,
@AmountReal = AmountRealSnow,
@AmountFake = AmountFakeSnow
RETURN @@Identity
END
我的列在trail
表中如下:
TrailID int identity primary key,
TrailName varchar(255) Unique,
Topen char(3),
AmountReal int,
Amountfake int
请问有什么建议吗?
答案
通常是更新语句s / b的结构
UPDATE myTable
SET myColumn = @variable
, myCol2 = @var2
WHERE myTable.filtercolumn = @variable
正如Sami的评论中所建议的那样,您还需要将记录密钥传递给存储过程以便更新记录。
这样的事情:
CREATE PROCEDURE UpdateTrail (@Key int,
@Open char(3),
@AmountReal int,
@AmountFake int
)
AS
BEGIN
Update TRAIL
set TOpen = @Open
, AmountRealSnow = @AmountReal
, AmountFakeSnow = @AmountFake
Where TRAIL.TrailID = @Key
Return @@Identity
END
以上是关于使用UPDATE存储过程的主要内容,如果未能解决你的问题,请参考以下文章
oracle中的存储过程有啥作用,该怎么理解?(数据更新的话用update语句不就完了吗)