Share via


Imleç veri türü bir OUTPUT parametre kullanma

Transact-SQL saklı yordamları kullanabilirsiniz cursor verileri yalnızca OUTPUT parametreleri yazın. If the cursor data type is specified for a parameter, both the VARYING and OUTPUT parameters are required.VARYING anahtar sözcük için bir parametre belirtilmemişse, veri türü olmalıdır cursor ve OUTPUT anahtar sözcüğü belirtildi.

Not

The cursor data type cannot be bound to application variables through the database APIs such as OLE DB, ODBC, ADO, and DB-Library.Bir uygulama için önce OUTPUT parametreleri bağlı olması gerekir çünkü yürütmek bir saklı yordam, saklı yordamlarda cursor OUTPUT parametreleri Apı veritabanından çağrılamaz. Alınan Bu yordamlar çağrılabilir. Transact-SQL işlenir, saklı yordamlar, veya yalnızca tetikler cursor OUTPUT değişken atanmış bir Transact-SQL Yerel cursor değişken.

Imleç çıkış parametreleri

Aşağıdaki kurallar ilgili cursor yordam çalıştırıldığında parametreleri çıktı:

  • yalnızca ilerleyen imleç için satırları imleci ait sonuç döndürdü küme yalnızca bu satırlar adresindeki ve çalıştırılır, örneğin saklı yordam sonuç imlecin konumunu dışında:

    • Bir yordamın sonuç üzerinde nonscrollable imleç açılır küme RS 100 satır adlı.

    • Yordamın sonuç küme RS ilk 5 satırlarının getirir.

    • Yordamı için arayanın döndürür.

    • Satır RS 100'den 6'dan çağırana döndürülen sonuç küme RS oluşur ve arayanın imlecinde RS ilk satırı önce yerleştirildi.

  • yalnızca ilerleyen imleç için tüm imleç tamamlandıktan sonra saklı yordamın ilk satırın önce konumlandırdıysanız neden küme çağıran bir toplu iş, saklı yordam veya tetikleyiciyi döndürdü.Döndürülen imleç konumu ilk satırda önce küme.

  • yalnızca ilerleyen imleç için boş bir imleç tamamlandıktan sonra saklı yordamının son satırın sonu dışında konumlandırdıysanız neden küme çağıran bir toplu iş, saklı yordam veya tetikleyiciyi döndürdü.

    Not

    Boş bir sonuç küme boş (null) değer aynı değil.

  • Kaydırılabilir bir imleç sonuç tüm satırlar için küme çağıran bir toplu iş, saklı yordam veya tetikleyiciyi saklı yordamın yürütülmesinin sonuç en döndürdü.Döndürdü, imleç konumu, yordamda yürütülen bir son getirme konumunda kalır.

  • Imleci kapalıysa, tüm imleç türünü geri çağıran bir toplu iş, saklı yordam veya tetikleyiciyi sonra boş (null) değer geçirilir.Bir imleç parametresi, atanırsa, imleç hiçbir zaman açıldı, ancak bu durum da olacaktır.

    Not

    Kapalı durumu, yalnızca dönüş zamanında önemlidir.Örneğin, biçimi ile yordamı bu yordamda daha sonra yeniden açın ve imleç'nın sonucu çağıran bir toplu iş, saklı yordam veya tetikleyiciyi ayarlamak geri dönmek için imleç bir parçası olarak kapatmak için geçerlidir.

Örnek

Aşağıdaki örnekte, bir çıktı parametresi, belirtilen bir saklı yordam oluşturulduğunda @currency\_cursor kullanarak cursor Veri Türü. saklı yordam sonra bir toplu iş adlandırılır

Ilk olarak bildirir ve sonra da para birimi tablosundaki bir imleç açar yordamı oluşturun.

Sonra bir yerel imleç değişken bildirir, imleci yerel bir değişkene atamak için bu yordamı çalıştırır ve sonra da imleci satırları getirir bir toplu iş çalıştırın.