sys.dm_exec_cursors (Transact-SQL)
Çeşitli veritabanlarındaki açık olan imleçler hakkında bilgi verir.
Sözdizimi
dm_exec_cursors (session_id | 0 )
Bağımsız değişkenler
session_id | 0
oturumkimliği.session_id Belirtilmişse, bu işlev , belirtilen oturumimleçler hakkında bilgi verir.0 Belirtilirse işlev tüm oturumlar için tüm imleçler hakkında bilgi verir.
Dönen Tablo
Sütun adı |
Veri türü |
Açıklama |
---|---|---|
session_id |
int |
Bu imleçtutan oturum kimliği. |
cursor_id |
int |
imleç nesne kimliği. |
name |
nvarchar(256) |
Kullanıcı tarafından tanımlanan imleç adı. |
özellikler |
nvarchar(256) |
imleçözelliklerini belirtir.Aşağıdaki özelliklerin değerlerinin, bu sütundeğeri oluşturmak üzere birleşir:
Örneğin, bu sütun için döndürülen değer olabilir "tsql | Dinamik | İyimser | Global (0) ". |
sql_handle |
varbinary(64) |
imleçbildirilen toplu iş metne işleci. |
statement_start_offset |
int |
Şu anda yürütülen toplu iş veya şu anda yürütülen deyim başladığı saklı yordam karakter sayısı.İle birlikte kullanılan sql_handle, statement_end_offsetve sys.dm_exec_sql_text dinamik yönetim işlevi isteği şu anda yürütülen deyim alınacak. |
statement_end_offset |
int |
Şu anda yürütülen toplu iş veya şu anda yürütülen deyim erdiği saklı yordam karakter sayısı.İle birlikte kullanılan sql_handle, statement_start_offsetve sys.dm_exec_sql_text dinamik yönetim işlevi isteği şu anda yürütülen deyim alınacak. |
plan_generation_num |
bigint |
Yeniden derlemesinde sonra planları örnekleri arasında ayırt etmek için kullanılan bir sıra numarası. |
creation_time |
datetime |
Bu imleç oluşturulduğunda zaman damgası. |
is_open |
bit |
imleç açık olup olmadığını belirtir. |
is_async_population |
bit |
Arka plan iş parçacığı yine de zaman uyumsuz bir anahtar KÜMESİ ya da statik imleçdoldurmamaya olduğu olup olmadığını belirtir. |
is_close_on_commit |
bit |
CURSOR_CLOSE_ON_COMMIT kullanarak imleç bildirilen olup olmadığını belirtir. 1 = Hareket sona erdiğinde imleç kapatılacak. |
fetch_status |
int |
Döndürür son durum imleçgetir.En son iade edilen @@ fetch_status değeri budur. |
fetch_buffer_size |
int |
Alma arabelleği boyutu hakkında bilgi verir. 1 = Transact -SQL imleçler.Bu API imleçler için daha yüksek bir değere küme olabilir. |
fetch_buffer_start |
int |
fast_forward ve dinamik imleçler için imleç açık değilse ya da ilk satırın öncesine yerleştirilir, 0 döndürür.Aksi durumda,-1 değerini döndürür. STATİK ve anahtar KÜMESİ imleç imleç son satırın konumlandırdıysanız imleç açık ve -1 değilse 0 döndürür. Aksi halde, konumlandırılmış satır numarasını verir. |
ansi_position |
int |
İmleç konumuna getirme arabelleğindeki. |
worker_time |
bigint |
Bu imleçyürütme çalışanları tarafından mikrosaniye zaman harcanan. |
okur |
bigint |
' % S'imleç imleçtarafından gerçekleştirilen okuma sayısı. |
Yazar |
bigint |
' % S'imleç imleçtarafından gerçekleştirilen yazma sayısı. |
dormant_duration |
bigint |
Son sorgu itibaren milisaniye (açın veya fetch) bu imleç başlatıldı. |
İzinler
Sunucu üzerindeki görünüm server state izni gerektirir.
Açıklamalar
Aşağıdaki tablo , imleç bildirim arabirim hakkında bilgi sağlar ve özelliklerini sütuniçin olası değerler içerir.
Özellik |
Açıklama |
---|---|
API |
İmleç veri erişimi (odbc, oledb) API'leri kullanarak bildirilmiş. |
TSQL |
İmleç Transact -SQL İMLEÇ bildirme sözdizimi kullanılarak bildirilmiş. |
Aşağıdaki tablo , imleç türü hakkında bilgi sağlar ve özelliklerini sütuniçin olası değerler içerir.
Tür |
Açıklama |
---|---|
Anahtar kümesi |
İmleci anahtar kümesi bildirilmiş. |
Dinamik |
İmleç dinamik olarak bildirilmiş. |
Anlık görüntü |
İmlecin anlık veya statik bildirilmiş. |
Fast_Forward |
İmleç Sar bildirilmiş. |
Aşağıdaki tablo , imleç eşzamanlılık hakkında bilgi sağlar ve özelliklerini sütuniçin olası değerler içerir.
Eşzamanlılık |
Açıklama |
---|---|
Salt Okunur |
İmleç salt okunur olarak bildirilmiş. |
Kaydırma kilitleri |
İmleç kaydırma kilitleri kullanır. |
İyimser |
İmleç iyimser eşzamanlılık denetimi kullanır. |
Aşağıdaki tablo , imleç kapsam hakkında bilgi sağlar ve özelliklerini sütuniçin olası değerler içerir.
Kapsam |
Açıklama |
---|---|
Yerel |
imleç kapsam toplu iş, saklı yordamveya tetikleyiciyi imleç oluşturulduğu yerel olduğunu belirtir. |
Genel |
imleç kapsam genel bağlantı olduğunu belirtir. |
Örnekler
A.Eski imleçler algılama
Bu örnek, belirtilen saat 36 saat daha uzun sunucuda açık olan imleçler hakkında bilgi verir.
SELECT creation_time, cursor_id, name, c.session_id, login_name
FROM sys.dm_exec_cursors(0) AS c
JOIN sys.dm_exec_sessions AS s ON c.session_id = s.session_id
WHERE DATEDIFF(hh, c.creation_time, GETDATE()) > 36;
GO