Aracılığıyla paylaş


sp_cursor_list (Transact-sql)

Sunucu imleçler açık bağlantı özniteliklerini bildirir.

Konu bağlantısı simgesi Transact-SQL Sözdizim Kuralları

Sözdizimi

sp_cursor_list [ @cursor_return = ] cursor_variable_name OUTPUT 
     , [ @cursor_scope = ] cursor_scope
[;]

Bağımsız değişkenler

  • @cursor\_return=cursor\_variable\_nameOUTPUT
    Bildirilen imleç değişken adıdır. cursor_variable_nameise cursor, hiçbir varsayılan ile. İmleci kaydırılabilir, dinamik, salt okunur bir imleç olur.

  • [ @cursor\_scope= ] cursor_scope
    İmleçler rapor düzeyini belirtir. cursor_scopeise int, hiçbir varsayılan ve can ile bu değerlerden birini olabilir.

    Değer

    Açıklama

    1

    Tüm yerel imleçler rapor.

    2

    Tüm genel imleçler rapor.

    3

    Hem yerel hem de genel imleçler rapor.

Dönüş Kodu Değerleri

Hiçbiri

Döndürülen imleçler

sp_cursor_listalt rapor olarak döner bir Transact-SQLİmleç çıkış parametresi, değil bir sonucu olarak ayarla. Böylece, Transact-SQLtoplu işlemleri, saklı yordamları ve Tetikleyicileri çıkış bir satır ile bir zamanda çalışmak üzere. Ayrıca yordamı veritabanı API işlevlerini doğrudan çağrılamaz gelir. İmleç çıkış parametresi için bir program değişken bağlı olmalıdır, ancak veritabanı API, bağlama imleç parametreler veya değişkenleri desteklemez.

Bu döndürülen imleç biçimi olduğunu sp_cursor_list. İmleç biçimi tarafından döndürülen biçimle aynıdır sp_describe_cursor.

Sütun adı

Veri türü

Açıklama

reference_name

sysname

İmleci başvurmak için kullanılan ad. Üzerinden adı verilen bir declare cursor deyimi imleç başvuru oldu, başvuru adı imleç adı ile aynıdır. Imleç başvuru bir değişken ise, başvuru adı imleç değişken adıdır.

cursor_name

sysname

declare cursor deyimi imleci adı. De SQL Server, imleç bir imleç değişken bir imleç ayarlayarak oluşturulmuşsa, cursor_name imleç değişken adını döndürür. Önceki sürümlerde, sistem tarafından oluşturulan bir ad için bu çıktı sütunu döndürür.

cursor_scope

smallint

1 = YEREL

2 = KÜRESEL

status

smallint

Aynı değerleri cursor_status sistem işlevi tarafından bildirilen olarak:

1 = Başvurulan imleç adı veya değişken imleçle açıktır. Duyarsız, statik imleç veya anahtar kümesi, o en azından varsa bir satır. İmleci dinamik ise, sonuç kümesi sıfır veya daha fazla satır var.

0 = Başvurulan imleç imleç adı veya değişken ama açık hiçbir satır vardır. Dinamik imleçler hiçbir zaman bu değeri döndürür.

-1 = Başvurulan imleç adı veya değişken imleci tarafından kapatılır.

-2 = Aşağıdakilere yalnızca imleç değişkenleri için. Hiçbir imleç değişkenine atanan yoktur. Belki bir çıkış parametresi bir imleç değişkenine atanan, ancak saklı yordamı dönmeden önce imleç kapalı.

-3 = Imleç veya imleci belirtilen ada sahip değişken yok veya imleç değişken bir imleç için ayrılan görmemiştir.

model

smallint

1 = INSENSITIVE (veya statik)

2 = Anahtar kümesi

3 = Dinamik

4 = Hızlı İleri

concurrency

smallint

1 = Salt okunur

2 = Kaydırma kilitleri

3 = İyimser

scrollable

smallint

0 = Salt ileri

1 = Kaydırılabilir

open_status

smallint

0 = Kapalı

1 = Açık

cursor_rows

int

Deneme sayısını, sonuç kümesinde satırlar. Daha fazla bilgi için bkz: @@ cursor_rows.

fetch_status

smallint

Bu imleç üzerinde son getirme durumu. Daha fazla bilgi için bkz: @@ fetch_status:

0 = Getirme başarılı.

-1 = Getirme başarısız oldu veya imleci sınırları.

-2 = İstenen satır eksik.

-9 = İmleç hiçbir getirme olmuştur.

column_count

smallint

İmleç sonuç sütun sayısını ayarlayın.

row_count

smallint

Imleci son işlemi tarafından etkilenen satırların sayısı. Daha fazla bilgi için bkz: @@ rowcount.

last_operation

smallint

İmleç gerçekleştirilen son işlem:

0 = No işlemler imleç gerçekleşir.

1 = AÇIK

2 = GETİRME

Ekle

4 = GÜNCELLEŞTİRME

5 = SİLME

6 = KAPAT

7 = AYIRMASI

cursor_handle

int

Imleci sunucu kapsamı içinde tanımlayan benzersiz bir değer.

Açıklamalar

sp_cursor_listbağlantı tarafından açılmış geçerli sunucu imleçler listesini oluşturur ve her imleç, scrollability ve imleç güncelleştirilebilme gibi genel özniteliklerini açıklar. Imleçler tarafından listelenen sp_cursor_listşunlardır:

  • Transact-SQLSunucu imleçler.

  • API sunucu imleçler açıldığında sonra adlı bir odbc uygulaması tarafından SQLSetCursorNameimleç adı.

Kullanım sp_describe_cursor_columnsimleç tarafından döndürülen sonuç kümesi özelliklerini açıklaması. Kullanım sp_describe_cursor_tablesimleç tarafından başvurulan temel tablolar rapor. sp_describe_cursoraynı bilgileri raporları sp_cursor_list, ancak yalnızca belirtilen bir imleç.

İzinler

Yürütme izinleri varsayılan publicrolü.

Örnekler

Aşağıdaki örnek genel imleci açar ve sp_cursor_listİmleç özniteliklerini raporlamak için.

USE AdventureWorks2012;
GO
-- Declare and open a keyset-driven cursor.
DECLARE abc CURSOR KEYSET FOR
SELECT LastName
FROM Person.Person
WHERE LastName LIKE 'S%';
OPEN abc;

-- Declare a cursor variable to hold the cursor output variable
-- from sp_cursor_list.
DECLARE @Report CURSOR;

-- Execute sp_cursor_list into the cursor variable.
EXEC master.dbo.sp_cursor_list @cursor_return = @Report OUTPUT,
      @cursor_scope = 2;

-- Fetch all the rows from the sp_cursor_list output cursor.
FETCH NEXT from @Report;
WHILE (@@FETCH_STATUS <> -1)
BEGIN
   FETCH NEXT from @Report;
END

-- Close and deallocate the cursor from sp_cursor_list.
CLOSE @Report;
DEALLOCATE @Report;
GO

-- Close and deallocate the original cursor.
CLOSE abc;
DEALLOCATE abc;
GO

USE AdventureWorks2012;
GO
-- Declare and open a keyset-driven cursor.
DECLARE abc CURSOR KEYSET FOR
SELECT LastName
FROM Person.Person
WHERE LastName LIKE 'S%';
OPEN abc;

-- Declare a cursor variable to hold the cursor output variable
-- from sp_cursor_list.
DECLARE @Report CURSOR;

-- Execute sp_cursor_list into the cursor variable.
EXEC master.dbo.sp_cursor_list @cursor_return = @Report OUTPUT,
      @cursor_scope = 2;

-- Fetch all the rows from the sp_cursor_list output cursor.
FETCH NEXT from @Report;
WHILE (@@FETCH_STATUS <> -1)
BEGIN
   FETCH NEXT from @Report;
END

-- Close and deallocate the cursor from sp_cursor_list.
CLOSE @Report;
DEALLOCATE @Report;
GO

-- Close and deallocate the original cursor.
CLOSE abc;
DEALLOCATE abc;
GO

Ayrıca bkz.

Başvuru

Sistem saklı yordamları (Transact-sql)