插入并运行存储过程与每个选择
我有一个这样的查询:插入并运行存储过程" title="存储过程">存储过程与每个选择
我有唯一的问题是参数@iTACE_KEY
- 它是唯一的(主密钥)和产生这样的:
EXEC @iTACE_KEY = sp_GETKEY 'JETACE', '0', '1', '9', @iUserId, @cTask='2'
我想运行这句话在SELECT语句中的每一行,所以每个插入将产生@iTACE_KEY
和TASK_KEY/CAET_KEY
从表JETACE
采取相结合。这可能吗?
回答:
我已经解决了这个问题光标:
DECLARE JETACE_01 cursor for SELECT CAET_KEY, TACE_SRT, TACE_STA
FROM JETACE
WHERE TASK_KEY = @iTASK_KEY_CON
OPEN JETACE_01
FETCH NEXT FROM JETACE_01
INTO @iCAET_KEY, @cTACE_SRT, @cTACE_STA
WHILE @@FETCH_STATUS = 0
begin
EXEC @iTACE_KEY = sp_GETKEY 'JETACE', '0', '1', '9', @iUserId, @cTask='2'
IF (@@ERROR <> 0) OR (@iTACE_KEY < 0)
BEGIN
IF @cTask = '6'
SELECT -61 TACE_KEY
RETURN -61
END
INSERT INTO JETACE (TACE_KEY, TASK_KEY, CAET_KEY, TACE_SRT, TACE_STA, TACE_DAT, TACE_UAD, TACE_TAD)
VALUES(@iTACE_KEY, @iTASK_KEY, @iCAET_KEY, @cTACE_SRT, @cTACE_STA, GETDATE(), @iUserId, GETDATE())
FETCH NEXT FROM JETACE_01
INTO @iCAET_KEY, @cTACE_SRT, @cTACE_STA
END
CLOSE JETACE_01
DEALLOCATE JETACE_01
以上是 插入并运行存储过程与每个选择 的全部内容, 来源链接: utcz.com/qa/257391.html