Microsoft SQL Server 2008 r2 bir veritabanım var. Ana veritabanındaki tablolara erişebilen marie adlı bir kullanıcı tanımlanır; bu iyi çalışıyor. Şimdi, marie bu sorguyu gerçekleştirmek için istiyorum:
SELECT resource_type,spid,login_time,status,hostname,program_name,nt_domain,nt_username,loginame
FROM sys.dm_tran_locks dl
JOIN sys.sysprocesses sp on dl.request_session_id = sp.spid
İlgili tablolar ana tablolardır; marie'den onlardan okuması için nasıl izin verebilirim? Zaten dbo olarak aşağıdaki yürütmek için çalıştı:
GRANT ALL on sys.dm_tran_locks TO marie
GRANT ALL on sys.sysprocesses TO marie
Yine de, marie yukarıdaki sorguyu gerçekleştirmeye çalıştığında hata:
Msg 297, Level 16, State 1, Line 1
The user does not have permission to perform this action.
Neyi yanlış yapıyorum?
sys.dm_exec_requests,sys.dm_exec_sessionsvbsysprocessesbir geriye dönük uyumluluk görünüşüdür ve bir noktada üründen çıkarılır.