请问1。存储过程中用TRANSACTION 处理比较好,还是用try catch 比较好?
2。第一个存储过程调用第二个存储过程的话,有必要在两个存储过程中都用TRANSACTION 或 try catch ?
3.以下用了TRANSACTION的,用法正确么?
BEGIN TRANSACTION
DECLARE CURSOR_COLS CURSOR
for select 。
OPEN CURSOR_COLS
FETCH NEXT FROM CURSOR_COLS INTO
IF (@@fetch_status <> 0)
BEGIN
CLOSE CURSOR_COLS
DEALLOCATE CURSOR_COLS
RETURN
END
SET NOCOUNT ONWHILE (@@FETCH_STATUS=0)
BEGIN
。
EXEC (' ALTER table '+@tablenm+' ALTER COLUMN '+@cols)
Select @id=@@identity
END
FETCH CURSOR_COLS INTO @FIELD_ID
CLOSE CURSOR_COLS
DEALLOCATE CURSOR_COLS
2。第一个存储过程调用第二个存储过程的话,有必要在两个存储过程中都用TRANSACTION 或 try catch ?
3.以下用了TRANSACTION的,用法正确么?
BEGIN TRANSACTION
DECLARE CURSOR_COLS CURSOR
for select 。
OPEN CURSOR_COLS
FETCH NEXT FROM CURSOR_COLS INTO
IF (@@fetch_status <> 0)
BEGIN
CLOSE CURSOR_COLS
DEALLOCATE CURSOR_COLS
RETURN
END
SET NOCOUNT ONWHILE (@@FETCH_STATUS=0)
BEGIN
。
EXEC (' ALTER table '+@tablenm+' ALTER COLUMN '+@cols)
Select @id=@@identity
END
FETCH CURSOR_COLS INTO @FIELD_ID
CLOSE CURSOR_COLS
DEALLOCATE CURSOR_COLS
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货