SQL SERVER 遍歷庫中的表及其記錄數


use 庫名
DECLARE @TableName varchar(255);
CREATE TABLE #GetRecordingTempTable([id] [INT] IDENTITY(1,1) NOT NULL, [TableName] varchar(255) NOT NULL, [RecordingCount] INT);
DECLARE Table_Cursor CURSOR FOR SELECT [name] FROM sysobjects WHERE xtype='U';
 OPEN Table_Cursor;
FETCH NEXT FROM Table_Cursor INTO @TableName;
  WHILE(@@FETCH_STATUS=0)
  BEGIN
  EXEC('INSERT INTO #GetRecordingTempTable ([TableName],[RecordingCount]) SELECT '''+@TableName+''', COUNT(0) FROM ['+@TableName+'];');
  FETCH NEXT FROM   Table_Cursor INTO @TableName;
 END
 CLOSE Table_Cursor;
 DEALLOCATE Table_Cursor;
 SELECT [TableName] AS [表名稱],[RecordingCount] AS [總記錄數] FROM #GetRecordingTempTable ORDER BY [RecordingCount] DESC;
DROP TABLE #GetRecordingTempTable;
GO

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