存储过程进行删除table内容,并记录删除数量
以下是一个示例存储过程,用于删除指定表中的所有行,并记录删除的行数:
```
CREATE PROCEDURE delete_table_rows
@table_name NVARCHAR(50)
AS
BEGIN
DECLARE @rows_deleted INT
SET @rows_deleted = 0
BEGIN TRY
BEGIN TRANSACTION
DELETE FROM @table_name
SET @rows_deleted = @@ROWCOUNT
COMMIT TRANSACTION
END TRY
BEGIN CATCH
ROLLBACK TRANSACTION
END CATCH
SELECT @rows_deleted AS 'Rows Deleted'
END
```
使用方法:
```
EXEC delete_table_rows 'my_table'
```
其中,`my_table` 是要删除行的表的名称。执行存储过程后,将返回删除的行数。如果删除失败,则不会记录任何行数。
创作工场
免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。
点击这里>>使用🔥专业版,更聪明、更完整、更原创!