OPEN (Transact-SQL)
Açılır bir Transact-SQL sunucu imleç ve imleç yürüterek doldurur Transact-SQL IMLECIN BILDIRMEK veya küme üzerinde belirtilen Ekstresi cursor_variable deyim.
OPEN { { [ GLOBAL ] cursor_name } | cursor_variable_name }
Bağımsız değişkenler
GENEL
Belirtir cursor_name bir genel imlecine başvuruyor.cursor_name
Bildirilen bir imleç adıdır.Hem genel hem de bir yerel imleç ile varsa cursor_name kendi adıyla cursor_name Genel, belirtilen; aksi takdirde, genel imleci başvuruyor. cursor_name Yerel imleci başvuruyor.cursor_variable_name
Bir imleç başvuran bir imleç değişken adıdır.
Remarks
imleç INSENSITIVE veya STATIK bir seçenek olarak, OPEN sonucu tutulacağı geçici tablo oluşturur küme.Sonuç kümesindeki her satır için en büyük satır boyutunu aştığında OPEN başarısız oluyor. SQL Server Tablolar. imleç anahtar KÜMESI seçeneğiyle bildirilirse, OPEN, anahtar kümesi tutulacağı geçici tablo oluşturur.Geçici tablolara saklanır tempdb.
Bir imleç açıldıktan sonra numarasını almak için @@ CURSOR_ROWS işlevini kullanın imleç açılmış olan son satırda niteleme.
Not
SQL Server, anahtar kümesi uygulamalı veya statik Transact-SQL imleç zaman uyumsuz olarak oluşturulmasını desteklemez.Transact-SQL imleç işlemlerini Aç veya GETIRME gibi batched; bu nedenle zaman uyumsuz bir Transact-SQL imleç nesil gerekmez.SQL Server zaman uyumsuz anahtar kümesi uygulamalı veya statik uygulama düşük Gecikmeli OPEN önemli olduğu arabirim (API) sunucu imleçler programlama desteklemek için nedeniyle istemci her imleç operasyonun yolundaki yuvarlak devam eder.
Örnekler
Aşağıdaki örnek, bir imleç açar ve tüm satırları getirir.
DECLARE Employee_Cursor CURSOR FOR
SELECT LastName, FirstName
FROM AdventureWorks.HumanResources.vEmployee
WHERE LastName like 'B%';
OPEN Employee_Cursor;
FETCH NEXT FROM Employee_Cursor;
WHILE @@FETCH_STATUS = 0
BEGIN
FETCH NEXT FROM Employee_Cursor
END;
CLOSE Employee_Cursor;
DEALLOCATE Employee_Cursor;