这个存储过程的含义

时间:2014-01-03 15:45:15

标签: tsql select stored-procedures set sybase

我有一个存储过程,但我不知道发生了什么。所以任何人都可以请你解释存储过程,因为基于此我必须修改其他存储过程。 在这里: **

BEGIN
DECLARE
@return_code int
@rows_deleted int outout
@batch_size int 
@purge_before datetime
SET PREFETCH OFF
SELECT @rows_deleted=0,
@return_code=0,
SET rowcount @batch_size
DELETE payee
WHERE cntct_dtm<=@purge_before
SELECT @return_code=@@error, @rows_deleted=@@rowcount
SET rowcount 0
RETURN @return_code
END

1 个答案:

答案 0 :(得分:3)

它似乎将两个值作为输入,int设置批量大小,datetime设置事务的边界。

  1. rowcount设置为batch_size以限制一次通过中受影响的行数
  2. payee表中删除cntct_dtm的值在传递给过程的datetime值之前。
  3. 保存价值@@error(最有可能是0/1)和@@rowcount
  4. rowcount更改回正常
  5. 返回@@error
  6. 的已保存值
相关问题