Saya memiliki situasi yang aneh. Menggunakan sp_whoisactive
saya bisa melihat ini:
Oke, dengan kueri ini, saya dapat melihat apa yang memicu (apakah kata ini ada dalam bahasa Inggris?) Itu:
SELECT c.session_id, c.properties, c.creation_time, c.is_open, t.text
FROM sys.dm_exec_cursors (SPID) c --0 for all cursors running
CROSS APPLY sys.dm_exec_sql_text (c.sql_handle) t
hasil:
itu sederhana select
. Mengapa ini menggunakan f etch_cursor
?
Juga, saya melihat banyak sql_text "kosong" juga. Apakah ini ada sesuatu dengan "kursor" ini?
DBCC INPUTBUFFER (spid)
tunjukkan ini:
ada pertanyaan di sini (dibuat oleh saya) tetapi saya tidak tahu apakah ini hal yang sama.
EDIT1:
Menggunakan kueri yang disediakan oleh kin, saya melihat ini:
EDIT2:
Menggunakan Monitor Aktivitas, saya bisa melihat ini:
Ini adalah permintaan yang paling mahal (Yang pertama disengaja, kita tahu tentang itu).
Dan lagi, saya ingin tahu, mengapa ini select * from...
adalah alasan FETCH CURSOR
...
EDIT3:
" select * from
..." ini dijalankan dari server lain (via linked server
).
Nah, Sekarang saya mengalami masalah untuk memahami apa yang dikatakan @kin.
Ini adalah execution plan
kueri (berjalan di server database yang sama):
ini sekarang, rencana eksekusi, berjalan di server lain, melalui server tertaut:
Ok, tidak masalah juga. Dan sekarang! rencana eksekusi, melalui **activity monitor**
(sama select * from
):