sp_describe_cursor_columns (Transact-sql)
Sunucu imleç raporlar sonuç sütun öznitelikleri ayarlayın.
Transact-SQL Sözdizim Kuralları
Sözdizimi
sp_describe_cursor_columns
[ @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Çıktı
Imleç çıktı almak için bildirilen imleç değişken adıdır. output_cursor_variableise cursor, ile hiçbir varsayılan ve gereken zamanda herhangi bir imleç ile ilişkili olamaz sp_describe_cursor_columnsdenir. Döndürülen imleç kaydırılabilir, dinamik, salt okunur bir imleç olur.@cursor\_source= { N'local' | N'global' | N'variable' }
İmleci üzerinde bildirilen bir yerel imleç, küresel bir imleç veya imleç değişken adını kullanarak belirtilen belirtir. Parametre nvarchar(30).@cursor\_identity=n'local_cursor_name'
Bir imleç ya da yerel anahtar olan ya da, yerel için öndeğer declare cursor deyimi tarafından oluşturulan adıdır. local_cursor_nameis nvarchar(128).@cursor\_identity=n'global_cursor_name'
global anahtar sözcüğü ya da sahip veya bu global için öndeğer declare cursor deyimi tarafından oluşturulan bir imleç adıdır. global_cursor_nameis nvarchar(128).global_cursor_nameodbc uygulama tarafından açılmış ve çağırarak adlı bir API sunucu imleç adı da olabilir SQLSetCursorName.
@cursor\_identity=n'input_cursor_variable'
Açık bir 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 imleçler
sp_describe_cursor_columnsalt rapor olarak saklar bir Transact-SQL İmleç parametresi çıktı. Bu Transact-SQLtoplu işlemleri, saklı yordamları ve Tetikleyicileri çıkış bir satır ile bir zamanda çalışmak üzere. Yani aynı zamanda yordamı veritabanı API işlevlerini doğrudan çağrılamaz. cursorÇıkış parametresi bir programı değişkene bağlı olması gerekir ama veritabanı API'leri desteklemiyor bağlama cursorparametre veya değişken.
Aşağıdaki tablo kullanarak döndürülen imleç biçimi gösterir sp_describe_cursor_columns.
Sütun adı |
Veri türü |
Açıklama |
---|---|---|
column_name |
sysname(null olabilecek) |
Sonuç kümesi sütun için atanan ad. Sütun null ise, sütun bir yan tümce olarak birlikte olmadan belirtildi. |
ordinal_position |
int |
En soldaki sütunun sütun sonuç göreli konumunu ayarlayın. En düşük konumda 0 ilk sütundur. |
column_characteristics_flags |
int |
ole DB dbcolumnflags saklanan bilgileri gösteren bir bit maskesi. Biri ya da bir arada aşağıdaki gibi olabilir: 1 = Ayraτ 2 = Sabit uzunluk 4 = Nullable 8 = Satır sürüm oluşturma 16 = Güncelleştirilebilir sütun (ayarlamak için öngörülen sütunları hiçbir for update yan tümcesine sahip bir imleç ve böyle bir sütunu varsa, tek başına imleci olabilir). Bit değerleri birleştirildiğinde, kombine bit değerleri özelliklerini uygulayın. Bit değerinin 6 Örneğin, sütunu bir sabit-Uzunluk (2) ise, NULL olabilecek (4) sütun. |
column_size |
int |
Bu sütundaki değeri için olası en büyük boyutu. |
data_type_sql |
smallint |
Gösteren sayı SQL Serversütun veri türü. |
column_precision |
tinyint |
Sütun başına en fazla duyarlık bPrecisionole db değeri. |
column_scale |
tinyint |
İçin ondalık virgülün sağındaki basamak sayısı numericya decimalveri türlerine göre bScaleole db değeri. |
order_position |
int |
Sütun sonucu sıralamada alıyorsa göreceli olarak en soldaki sütun sırası anahtar sütun konumunu ayarlayın. |
order_direction |
varchar(1)(null olabilecek) |
A = sütun sipariş anahtardır ve sıralaması artan. D = sütun sipariş anahtardır ve sıralaması azalan. null = sütun sıralamada katılmayan. |
hidden_column |
smallint |
0 = bu sütunu seçme listesinde görünür. 1 Gelecekte kullanılmak üzere ayrılmış =. |
columnid |
int |
Temel sütun sütun Kımlığı. Eğer sonuç kümesi sütunu bir ifadenin inşa columnid-1 olur. |
objectid |
int |
Sütun sağlayan nesne veya temel tablo nesne Kımlığı. Eğer sonuç kümesi sütunu bir ifadenin inşa objectid-1 olur. |
dbid |
int |
Sütun sağlayarak temel tabloyu içeren veritabanı Kımlığı. Eğer sonuç kümesi sütunu bir ifadenin inşa dbid-1 olur. |
dbname |
sysname (null olabilecek) |
Sütun sağlayarak temel tabloyu içeren veritabanının adı. Eğer sonuç kümesi sütunu bir ifadenin inşa dbnamenull olur. |
Açıklamalar
sp_describe_cursor_columnsher imleç adı ve veri türü gibi bir sunucu imleç sonuç kümesindeki sütun özniteliklerini açıklar. Kullanım sp_describe_cursorsunucu imleç genel özniteliklerini açıklaması. Kullanım sp_describe_cursor_tablesimleç tarafından başvurulan temel tablolar rapor. Bir rapor almak için Transact-SQLSunucu imleçler bağlantı görünür kullanın sp_cursor_list.
İzinler
Üyelik publicrolü.
Örnekler
Aşağıdaki örnek genel imleci açar ve sp_describe_cursor_columnsimleç içinde kullanılan sütunlar raporlamak için.
USE AdventureWorks2012;
GO
-- Declare and open a global cursor.
DECLARE abc CURSOR KEYSET FOR
SELECT LastName
FROM Person.Person;
GO
OPEN abc;
-- Declare a cursor variable to hold the cursor output variable
-- from sp_describe_cursor_columns.
DECLARE @Report CURSOR;
-- Execute sp_describe_cursor_columns into the cursor variable.
EXEC master.dbo.sp_describe_cursor_columns
@cursor_return = @Report OUTPUT
,@cursor_source = N'global'
,@cursor_identity = N'abc';
-- Fetch all the rows from the sp_describe_cursor_columns 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_columns.
CLOSE @Report;
DEALLOCATE @Report;
GO
-- Close and deallocate the original cursor.
CLOSE abc;
DEALLOCATE abc;
GO
USE AdventureWorks2012;
GO
-- Declare and open a global cursor.
DECLARE abc CURSOR KEYSET FOR
SELECT LastName
FROM Person.Person;
GO
OPEN abc;
-- Declare a cursor variable to hold the cursor output variable
-- from sp_describe_cursor_columns.
DECLARE @Report CURSOR;
-- Execute sp_describe_cursor_columns into the cursor variable.
EXEC master.dbo.sp_describe_cursor_columns
@cursor_return = @Report OUTPUT
,@cursor_source = N'global'
,@cursor_identity = N'abc';
-- Fetch all the rows from the sp_describe_cursor_columns 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_columns.
CLOSE @Report;
DEALLOCATE @Report;
GO
-- Close and deallocate the original cursor.
CLOSE abc;
DEALLOCATE abc;
GO
Ayrıca bkz.
Başvuru
sp_describe_cursor (Transact-sql)
sp_describe_cursor_tables (Transact-sql)
Sistem saklı yordamları (Transact-sql)