清空某個數據庫中所有表的數據

-- =============================================
-- Description: <Truncate All Table Data>
-- =============================================

DECLARE @count INT
DECLARE @rowindex INT
DECLARE @sqlTemp NVARCHAR(500)
DECLARE @name VARCHAR(50)
DECLARE @tableName TABLE
(
 [rowid] [bigint] IDENTITY(1,1) NOT NULL,
 [name] [nvarchar](50) NULL
)
INSERT INTO @tableName select name from sysobjects where type = 'U' order by name

SET @rowindex = 1
SELECT @count= COUNT(*) FROM @tableName
print 'total table count:' + str(@count)
WHILE @rowindex<=@count
BEGIN
SELECT @name=[name] FROM @tableName WHERE rowid=@rowindex ---select the row data

set @sqlTemp= 'truncate table ' + @name
EXEC SP_EXECUTESQL @sqlTemp
PRINT LTRIM(str(@rowindex)) + ',' + @name
SET @rowindex = @rowindex + 1
END---END WHILE

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章