SQL Server'da diziyi saklı yordama geçebilir miyiz?
SQL Server'da diziyi saklı yordama geçebilir miyiz?

Video: SQL Server'da diziyi saklı yordama geçebilir miyiz?

Video: SQL Server'da diziyi saklı yordama geçebilir miyiz?
Video: Bölüm 3 Konu 14- STRING Çalışma Egzersizleri 2024, Kasım
Anonim

için destek yok dizi içinde SQL Server ama bunun birkaç yolu var geçebilirsin toplama bir saklanan işlem.

Bunun yanında saklı yordamda listeyi geçebilir miyiz?

Hayır, diziler/ listeler ' doğrudan SQL Server'a geçirilemez. Aşağıdaki seçenekler mevcuttur: Geçen virgülle ayrılmış liste ve sonra SQL'de bir işleve sahip olmak liste . virgülle ayrılmış liste olacak büyük olasılıkla bir Nvarchar() olarak geçirilir

İkincisi, virgülle ayrılmış bir dize değerini SQL'de saklı bir prosedüre nasıl iletirsiniz? Aşağıdaki saklı yordam, virgülle ayrılmış (sınırlanmış) bir dize kullanılarak Kimlikleri geçirilen Çalışanların kayıtlarını alır.

  1. PROSEDÜR OLUŞTURUN GetEmployees.
  2. @EmployeeIds VARCHAR(100)
  3. OLARAK.
  4. BAŞLAMAK.
  5. Adı, Soyadı SEÇİN.
  6. Çalışanlardan.
  7. Çalışan Kimliği NEREDE(
  8. CAST SEÇ(INTEGER OLARAK Öğe)

Sonuç olarak, neden büyük bir dizi değere göre bir prosedüre geçirilmemelidir?

nedeni sen Yapabilmek 'T geçmek bir dizi tarafından değer şudur Çünkü orada NS izlemenin belirli bir yolu yok dizinin fonksiyon çağırma mantığı olacak şekilde boyut istemek ne kadar bellek ayrılacağını ve neyin kopyalanacağını bilin. Sen geçebilir bir sınıf örneği çünkü sınıflar Sahip olmak yapıcılar. diziler.

Tablo değerli parametreler nelerdir?

A tablo - değerli parametre bir parametre Birlikte tablo tip. Bunu kullanarak parametre şeklinde bir saklı yordama veya parametreli bir SQL komutuna birden çok veri satırı gönderebilirsiniz. tablo . Transact-SQL, sütun değerlerine erişmek için kullanılabilir. tablo - değerli parametreler.

Önerilen: