Detectar estadistiques d’usuari a una base de dades:
-- Llista els índexs creats per l'usuari a una base de dades -- NOTA SAP 2358988 SELECT st.* FROM sys.stats AS st INNER JOIN sys.tables AS t ON st.object_id = t.object_id WHERE st.user_created = 1
Esborrar-los:
-- ESBORRAR ESTADISTIQUES CREADES PER L'USUARI -- (Normalment per l'optimitzador de consultes del SQL Server) -- Soluciona el missatge d'advertiment pre actualització del SAP Business One (Nota SAP 2358988) -- -- Autor: David Marti -- Última modificació: 10/3/2018 DECLARE Estadistiques CURSOR FOR SELECT OBJECT_NAME(st.object_id),st.name FROM sys.stats AS st INNER JOIN sys.tables AS t ON st.object_id = t.object_id WHERE st.user_created = 1 DECLARE @NomTaula NVARCHAR(80) DECLARE @NomEstadistica NVARCHAR(512) OPEN Estadistiques FETCH next FROM Estadistiques INTO @NomTaula,@NomEstadistica WHILE @@FETCH_STATUS = 0 BEGIN EXEC ('drop statistics ['+@NomTaula+'].' + @NomEstadistica) FETCH next FROM Estadistiques INTO @NomTaula,@NomEstadistica END CLOSE Estadistiques DEALLOCATE Estadistiques GO