有人可以帮我解决这个问题吗,我在一张表上有 5 列(表:gl_acct_no),在 SQL 上使用存储过程我想使用循环来缩短我的代码,这是我的代码:
CREATE PROCEDURE [dbo].[sp_UpdateAccountNo]
(
@flag int
,@NEWAcctNo nAcct_num_10
,@OLDAcctNo nAcct_num_10
)
AS
IF EXISTS(SELECT glmt_udAcct_no_old FROM gl_master WHERE glmt_udAcct_no = @NEWAcctNo)
BEGIN
return(1)
END
ELSE
BEGIN
if @flag = 0
BEGIN
UPDATE gl_master
SET glmt_udAcct_no_old = @OLDAcctNo
WHERE glmt_udAcct_no = @OLDAcctNo
END
UPDATE gl_master
SET glmt_udAcct_no = @NEWAcctNo
WHERE glmt_udAcct_no_old = @OLDAcctNo
UPDATE gl_acct_no
SET gl_acno_01 = @NEWAcctNo
WHERE gl_acno_01 = @OLDAcctNo
UPDATE gl_acct_no
SET gl_acno_02 = @NEWAcctNo
WHERE gl_acno_02 = @OLDAcctNo
UPDATE gl_acct_no
SET gl_acno_03 = @NEWAcctNo
WHERE gl_acno_03 = @OLDAcctNo
UPDATE gl_acct_no
SET gl_acno_04 = @NEWAcctNo
WHERE gl_acno_04 = @OLDAcctNo
UPDATE gl_acct_no
SET gl_acno_05 = @NEWAcctNo
WHERE gl_acno_05 = @OLDAcctNo
END
我想在存储过程中使用循环将 UPDATE gl_acct_no_01 更新为 05。请帮助谢谢。