Permiso para acceder a sys.dm_db_index_usage_stats

Así que tengo un sitio web para uso interno que rastrea un montón de estadísticas para los empleados. Uno de ellos es si faltan informes. Dado que la lista de elementos que aún no tienen informes se actualiza solo cada dos días, y hay un período de gracia de 3 días en estos informes, estoy comparando la Fecha (releaseDt) de que el artículo se registró como un informe faltante a la la última vez que se actualizó la base de datos (@lastupdate). De esta manera, si la base de datos de informes no se ha actualizado pero el informe está completo, el sitio web no está descartando a alguien por omitir un informe.

El código SQL funciona bien con los privilegios de nivel de administrador, pero por razones obvias no estoy permitiendo que la cuenta ASP.NET tenga el nivel de administrador del servidor.

He configurado una cuenta SQL que el código C # de ASP.NET utiliza para iniciar sesión, y los permisos para todo lo demás están bien. (Acceso de lectura solo para las bases de datos específicas que utiliza). No puedo averiguar a qué darle acceso para tener acceso para leer esta vista de administración dinámica específica.

Apreciaría sugerencias utilizando Management Studio o usando unGRANT Declaración SQL

Esto parece tener información relacionada en la vista en cuestión:

sys.dm_db_index_usage_stats (Transact-SQL)

DECLARE @lastupdate datetime
     SELECT @lastupdate = last_user_update from sys.dm_db_index_usage_stats
     WHERE OBJECT_ID = OBJECT_ID('MissingReport')

SELECT 
    COALESCE(Creator, 'Total') AS 'Creator',
    COUNT(*) AS Number, 
    ' + CONVERT(varchar(32), SUM(Cost), 1) AS 'Cost' 
    FROM MissingReport 
    WHERE NOT( 
        [bunch of conditions that make something exempt from needing a report]
        OR
        (
            DATEDIFF(day,ReleaseDt,@lastupdate) <= 3
        )
    )
    GROUP BY Creator WITH ROLLUP

Respuestas a la pregunta(1)

Su respuesta a la pregunta