【发布时间】:2016-08-19 14:30:11
【问题描述】:
作为一个新手,我有一个问题可以帮助我解决我正在处理的问题。
有了下面创建的表,有没有办法修改存储过程来更新表中的多行
CREATE TABLE AccountTable
(
RowID int IDENTITY(1, 1),
AccountID varchar(2),
AccountName varchar(50),
SeqNum int,
SeqDate datetime
)
CREATE PROCEDURE [ACCOUNTTABLE_UPDATE]
(
@SeqNum int,
@SeqDate datetime,
@Account_ID varchar(2)
)
AS
SET NOCOUNT ON
BEGIN
UPDATE AccountTable
SET SeqNum = @SeqNum, SeqDate = @SeqDate
WHERE AccountID = @AccountID
END
EXEC ACCOUNTTABLE_UPDATE SeqNumValue, SeqDateValue, AccountIDValue
手动运行存储过程当然会编辑一行,添加更多的值会导致参数过多的错误。我只是想看看这个存储过程实际上是否可以更新表中的多行,或者是否应该将其修改为实际上处理提供超过 3 个参数。
【问题讨论】:
-
您可以使用表值参数或xml参数或逗号分隔的字符串来传递多个值并使用它。检查这个:sqlwithmanoj.com/2015/07/10/…
标签: sql sql-server stored-procedures