У меня есть база данных SQL Server 2005 на компьютере с Windows Server 2003 (да, мы пытаемся перейти на более новую версию). Я могу использовать следующий код, чтобы увидеть, что в прошлый раз к различным базам данных обращались:
select
d.name,
x1 = (select X1 = max(bb.xx)
from
(select xx = max(last_user_seek)
where max(last_user_seek) is not null
union all
select xx = max(last_user_scan)
where max(last_user_scan) is not null
union all
select xx = max(last_user_lookup)
where max(last_user_lookup) is not null
union all
select xx = max(last_user_update)
where max(last_user_update) is not null) bb)
from
master.dbo.sysdatabases d
left outer join
sys.dm_db_index_usage_stats s on d.dbid= s.database_id
group by
d.name
Это отлично работает, но мне нужно выяснить, какой пользователь выполнил этот доступ. Как бы я это сделал?