Xin chào,
Thống kê các đối tượng cơ sở dữ liệu phải được cập nhật để đưa ra quyết định đúng đắn của trình tối ưu hóa SQL Server.
Nếu thống kê đối tượng cơ sở dữ liệu không được cập nhật thì trình tối ưu hóa cơ sở dữ liệu SQL Server sẽ đưa ra quyết định sai cho kế hoạch thực hiện giao dịch.
Bạn có thể cập nhật tất cả thống kê cơ sở dữ liệu bằng tập lệnh sau trong Phiên bản máy chủ SQL.
Bạn nên thực hiện truy vấn sau trong thời gian rảnh của cơ sở dữ liệu, chẳng hạn như buổi tối hoặc cuối tuần.
DECLARE @SQL VARCHAR(1000) DECLARE @DB sysname DECLARE curDB CURSOR FORWARD_ONLY STATIC FOR SELECT [name] FROM master..sysdatabases WHERE [name] NOT IN ('model', 'tempdb') ORDER BY [name] OPEN curDB FETCH NEXT FROM curDB INTO @DB WHILE @@FETCH_STATUS = 0 BEGIN SELECT @SQL = 'USE [' + @DB +']' + CHAR(13) + 'EXEC sp_updatestats' + CHAR(13) PRINT @SQL FETCH NEXT FROM curDB INTO @DB END CLOSE curDB DEALLOCATE curDB