PDA

View Full Version : مشخصات اجرا کننده یک Query



mojtaba_a_k
پنج شنبه 18 خرداد 1391, 08:05 صبح
سلام و خدا قوت
چه جوری می شه فهمید یک query رو کدام سیستم و کدام حساب کاربری(User) اجرا کرده
مثلا در مثال زیر می شه فهمید کدام سیستم و با کدام حساب کاربری خوده ssms اجرا شده است:
SELECT HOST_NAME() AS HostName , SUSER_NAME () LoggedUser
ولی می خوام بدونم کدام user در hostname این query رو اجرا کرده؟؟؟

حمیدرضاصادقیان
شنبه 20 خرداد 1391, 07:45 صبح
سلام.
در نسخه 2008 شما میتوانید از اشیای سیستمی(DVM) که با dm_exec_* شروع می شوند کار کنید. زیر مجموعه این اشیا که از جداولی مثل Sysprocesses استفاده میکنند شامل Plan های مخصوص Query ، Query های اجرا شده ، چه کسی و از چه سیستمی و چه زمانی اجرا شده، استفاده کنید.
این لینک (http://sqlserverpedia.com/wiki/DM_Objects_-_Sys.dm_exec_sessions) هم توضیحات کاملتر رو بهتون ارائه میده.