Aracılığıyla paylaş


sp_describe_cursor (Transact-SQL)

Sunucu imleçözniteliklerini bildirir.

Konu bağlantısı simgesiTransact-SQL sözdizimi kuralları

Sözdizimi

sp_describe_cursor [ @cursor_return = ] output_cursor_variable OUTPUT 
     { [ , [ @cursor_source = ] N'local'
    , [ @cursor_identity = ] N'local_cursor_name' ] 
   | [ , [ @cursor_source = ] N'global'
    , [ @cursor_identity = ] N'global_cursor_name' ] 
   | [ , [ @cursor_source = ] N'variable'
     , [ @cursor_identity = ] N'input_cursor_variable' ] 
     } 
[;]

Bağımsız değişkenler

  • [ @cursor_return= ] output_cursor_variable OUTPUT
    imleç çıktı almak için imleç bildirilen değişken adıdır.output_cursor_variableolan cursor, hiçbir varsayılan ve gereken saattüm imleçler ile ilişkili olmaması sp_describe_cursor denir.Döndürülen imleç kaydırılabilir, dinamik, salt okunur bir imleçolur.

  • [ @cursor_source= ] { N'local' | N'global' | N'variable' }
    Yerel imleç, genel imleçveya imleç değişken adını kullanarak rapor üzerinde imleç denetlenip denetlenmeyeceğini belirtir.Parametre nvarchar(30).

  • [ @cursor_identity= ] N'local_cursor_name' ]
    imleç ya da yerel anahtar sözcüğü olan veya yerel varsayılan olarak alınır bir BİLDİRMEK İMLEÇ deyim tarafından oluşturulan adıdır.local_cursor_nameis nvarchar(128).

  • [ @cursor_identity= ] N'global_cursor_name' ]
    imleç genel anahtar sözcük ya da sahip veya global için varsayılan olarak alınır bir BİLDİRMEK İMLEÇ deyim tarafından oluşturulan adıdır.global_cursor_nameis nvarchar(128).

    global_cursor_nameodbc uygulama tarafından açılmış bir API sunucu imleç adını da olabilir, sonra da çağırarak adlı SQLSetCursorName.

  • [ @cursor_identity= ] N'input_cursor_variable' ]
    Açık imleçile ilişkili bir imleç değişken adıdır.input_cursor_variableis nvarchar(128).

Dönüş Kodu Değerleri

Hiçbiri

Döndürülen İmleçler

sp_describe_cursorkendi sonuç kümesi Kapsüller bir Transact-SQL cursor çıkış parametresi.Böylece Transact-SQL toplu işlemleri, saklı yordamları ve Tetikleyicileri çıkış bir satır ile her saatçalışmak için.Bu da yordamı veritabanı API işlevlerini doğrudan çağrılamaz anlamına gelir.cursor Çıkış parametresi bağlı, değişkene bir program, ancak veritabanı API'leri desteklemiyor bağlama cursor parametre veya değişken.

Aşağıdaki tablo kullanarak döndürülen imleç biçimi gösterir sp_describe_cursor.imleç biçimi kullanarak döndürülen biçimle aynıdır sp_cursor_list.

Sütun adı

Veri türü

Açıklama

reference_name

sysname

imleçbaşvurmak için kullanılan ad.imleç referansı üzerinden bir BİLDİRMEK İMLEÇ deyimbelirtilen adı ise, başvuru adı imleç adı ile aynıdır.imleç referansı ile bir değişken ise, başvuru adı deðiþkenin adýdýr.

cursor_name

sysname

BİLDİRMEK İMLEÇ deyim imleç adı.De SQL Server, imleç bir imleç değişken bir imleç, ayarlama tarafından oluşturulmuş cursor_name adını döndürür imleç değişken.Önceki sürümlerinde SQL Server, bu çıktı sütun döndürür bir sistem tarafından oluşturulan ad.

cursor_scope

tinyint

1 = YEREL

2 = GENEL

status

int

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

1 = Başvurulan imleç adı veya değişken ' % s'imleç imleç tarafından açıktır.Duyarlı, statik imleç veya anahtar kümesi, sahip en az bir satır.Dinamik imleç ise sonuç kümesi sıfır veya daha fazla satır var.

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

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

-2 Aşağıdakilere yalnızca imleç değişkenleri =.Hiçbir imleç değişkenine atanan vardır.Büyük bir olasılıkla bir çıkış parametresi olan bir imleç değişkenine atanan, ancak saklı yordam dönmeden önce imleç kapalı.

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

model

tinyint

1 = Küçük harf duyarlı (veya statik)

2 = Anahtar kümesi

3 = Dinamik

4 = Hızlı İleri Sar

concurrency

tinyint

1 = Salt okunur

2 = Kaydırma kilitleri

3 = İyimser

scrollable

tinyint

0 = Salt ileri

1 = Kaydırılabilir

open_status

tinyint

0 = Kapalı

1 = Açık

cursor_rows

decimal(10,0)

sonuç kümesiniteleme sayısı satırlar.Daha fazla bilgi için, bkz. @@ cursor_rows (Transact-SQL).

fetch_status

smallint

Bu imleçüzerinde son getirme durumu.Daha fazla bilgi için, bkz. @@ fetch_status (Transact-SQL).

0 = Getirme başarılı.

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

-2 = İstenen satır eksik.

"9" Simgesi = imleçhiçbir getirme olmuştur.

column_count

smallint

imleçsonuç kümesisütun sayısı.

row_count

decimal(10,0)

imleçson operasyonda tarafından etkilenen satırların sayısı.Daha fazla bilgi için, bkz. @@ rowcount (Transact-SQL).

last_operation

tinyint

imleçgerçekleştirilen son işlem:

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

1 = AÇIK

2 = GETİRME

3 = EKLE

4 = GÜNCELLEŞTİRME

5 = DELETE

6 = KAPAT

7 = AYIRMASI

cursor_handle

int

Sunucu kapsam içinde imleç için benzersiz bir değer.

Açıklamalar

sp_describe_cursorbir sunucu imleç, kaydırma ve güncelleştirme olanağı gibi genel özniteliklerini açıklar.Use sp_describe_cursor_columns bir imleçtarafından döndürülen sonuç kümesi özniteliklerini açıklaması.Use sp_describe_cursor_tables ' % s'imleç imleçtarafından başvurulan temel tablolar, rapor.Bir rapor almak için Transact-SQL server imleçler görünür bağlantı kullanmak sp_cursor_list.

Bir imleç türü BİLDİRMEK İMLEÇ deyim isteyebilir SQL Server olamaz desteği kullanarak select deyim içerdiği declare cursor.SQL Serverörtülü imleç select deyimkullanarak destekleyen bir türe dönüştürür.TYPE_WARNING İMLEÇ BİLDİRMEK deyimbelirtilirse, SQL Server uygulamaya dönüştürme tamamlanmış olan bilgilendirici bir ileti gönderir.sp_describe_cursorsonra uygulanan imleç türünü belirlemek için çağrılabilir.

İzinler

Üyelik gerektiren public rolü.

Örnekler

Aşağıdaki örnek genel imleç açar ve kullanan sp_describe_cursor imleçözniteliklerini raporlamak için.

USE AdventureWorks2008R2;
GO
-- Declare and open a global cursor.
DECLARE abc CURSOR STATIC FOR
SELECT LastName
FROM Person.Person;

OPEN abc;

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

-- Execute sp_describe_cursor into the cursor variable.
EXEC master.dbo.sp_describe_cursor @cursor_return = @Report OUTPUT,
        @cursor_source = N'global', @cursor_identity = N'abc';

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

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

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