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
Oturumun Kımlığı. Eğer session_idbelirtilirse, bu işlev, belirtilen oturumda imleç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 oturumun Kımlığı. |
cursor_id |
int |
İmleci nesne Kımlığı. |
name |
nvarchar(256) |
Kullanıcı tarafından tanımlanan imleç adı. |
özellikler |
nvarchar(256) |
İmleç özelliklerini belirtir. Bu sütunun değerini oluşturmak için aşağıdaki özelliklerin değerlerini birleştirilmiş:
Örneğin, bu sütunda döndürülen değeri olabilir "tsql | Dinamik | İyimser | Global (0) ". |
sql_handle |
varbinary(64) |
Imleci bildirilen toplu metne işleci. |
statement_start_offset |
int |
Yürütülmekte içine karakter toplu iş veya saklı yordam, şu anda yürütülen deyimi başlayacağı. İle birlikte kullanılan sql_handle, statement_end_offsetve sys.dm_exec_sql_text isteği için şu anda yürütülen deyimi almak için dinamik yönetimi işlevi. |
statement_end_offset |
int |
Yürütülmekte içine karakter toplu iş veya saklı yordam, şu anda yürütülen deyimi erdiği. İle birlikte kullanılan sql_handle, statement_start_offsetve sys.dm_exec_sql_text isteği için şu anda yürütülen deyimi almak için dinamik yönetimi işlevi. |
plan_generation_num |
bigint |
Recompilation sonra planları örnekleri arasında ayırt etmek için kullanılan bir sıra numarası. |
creation_time |
datetime |
Bu imleç oluşturulduğunda TIMESTAMP. |
is_open |
bit |
İmleç açık olup olmadığını belirtir. |
is_async_population |
bit |
Arka plan iş parçacığı daha hala zaman uyumsuz bir anahtar kümesi ya da statik imleç doldurmamaya olup olmadığını belirtir. |
is_close_on_commit |
bit |
CURSOR_CLOSE_ON_COMMIT kullanarak imleci bildirilen olup olmadığını belirtir. 1 = Hareket sona erdiğinde imleç kapalı. |
FETCH_STATUS |
int |
Döner son imleç durumu döndürür. Bu son dönen @@ fetch_status değerdir. |
fetch_buffer_size |
int |
Getirme arabellek boyutu hakkında bilgi verir. 1 Transact-sql imleçler =. Bu API imleçler için daha yüksek bir değere ayarlanabilir. |
fetch_buffer_start |
int |
fast_forward ve dinamik imleçler için imleç açık değilse ya da önce ilk satırda konumlandırılmış, 0 döndürür. Aksi durumda,-1 değerini döndürür. STATİK ve anahtar KÜMESI imleçler için imlecin son satırın alıyor eğer imleç açık ve -1 değilse 0 döndürür. Aksi halde, içinde konumlandırılmış satır numarasını verir. |
ansi_position |
int |
İmleç konumu getirme arabelleğindeki. |
worker_time |
bigint |
Mikrosaniye olarak yürütülen bu imleç işçiler tarafından zaman geçirdim. |
okur |
bigint |
Imleç tarafından gerçekleştirilen okuma sayısı. |
yazıyor |
bigint |
Imleç tarafından gerçekleştirilen yazma sayısı. |
dormant_duration |
bigint |
Son sorgu itibaren milisaniye (açık ya da getir) Bu imleç başlatıldı. |
İzinler
Sunucu üzerindeki VIEW server state izni gerektirir.
Açıklamalar
Aşağıdaki tabloda, imleç bildirimi arabirimi hakkında bilgi sağlar ve özelliklerini sütun için olası değerler içerir.
Özellik |
Açıklama |
---|---|
API |
Bir veri erişim API (odbc, oledb) kullanarak imleci bildirilen. |
TSQL |
İmleç declare cursor Transact-sql sözdizimini kullanarak ilan edildi. |
Aşağıdaki tabloda, imleç türü hakkında bilgi sağlar ve özelliklerini sütun için olası değerler içerir.
Tür |
Açıklama |
---|---|
Anahtar kümesi |
İmleci anahtar kümesi ilan edildi. |
Dinamik |
İmleç dinamik olarak ilan edildi. |
Anlık görüntü |
İmleci, anlık görüntü veya statik bildirilen. |
Fast_Forward |
İmleci hızlı ileri ilan edildi. |
Aşağıdaki tabloda, imleç eşzamanlılık hakkında bilgi sağlar ve özelliklerini sütun için olası değerler içerir.
Eşzamanlılık |
Açıklama |
---|---|
Salt Okunur |
İmleç salt okunur olarak ilan edildi. |
Kaydırma kilitleri |
Imleç kaydırma kilitler kullanır. |
İyimser |
Imleç iyimser eşzamanlılık denetimi kullanır. |
Aşağıdaki tabloda, imleç kapsamı hakkında bilgi sağlar ve özelliklerini sütun için olası değerler içerir.
Kapsam |
Açıklama |
---|---|
Yerel |
İmleç kapsamı toplu iş, saklı yordam veya tetikleyiciyi imleci oluşturulduğu yerel olduğunu belirtir. |
Küresel |
İmleç kapsamı bağlantı küresel olduğunu belirtir. |
Örnekler
A.Eski imleçler algılama
Bu örnek, sunucu 36 saat belirtilen süreden daha uzun 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
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
Ayrıca bkz.
Başvuru
Dinamik yönetimi görünümler ve işlevler (Transact-sql)
Yürütme dinamik yönetimi görünümler ve işlevler (Transact-sql) ilgili