Aracılığıyla paylaş


Kullanıcı tanımlı toplamalar oluşturma

Şunlar için geçerlidir: SQL Server 2016 (13.x) ve sonraki sürümleri

SQL Server içinde CLR derlemesinde programlanmış bir veritabanı nesnesi oluşturabilirsiniz. CLR tarafından sağlanan zengin programlama modelini kullanabilen veritabanı nesneleri tetikleyiciler, saklı yordamlar, işlevler, toplama işlevleri ve türleri içerir.

Transact-SQL'de sağlanan yerleşik toplama işlevleri gibi, kullanıcı tanımlı toplama işlevleri de bir değer kümesi üzerinde hesaplama yapar ve tek bir değer döndürür.

SQL Server'da kullanıcı tanımlı toplama işlevi oluşturmak aşağıdaki adımları içerir:

  • Kullanıcı tanımlı toplama işlevini Microsoft .NET Framework tarafından desteklenen bir dilde sınıf olarak tanımlayın. CLR'de kullanıcı tanımlı toplamaları programlama hakkında daha fazla bilgi için bkz.CLR kullanıcı tanımlı toplamaları . Uygun dil derleyicisini kullanarak bir CLR derlemesi oluşturmak için bu sınıfı derleyin.

  • CREATE ASSEMBLY deyimini kullanarak derlemeyi SQL Server'a kaydedin. SQL Server'daki derlemeler hakkında daha fazla bilgi için bkz. Derlemeleri (Veritabanı Altyapısı).

  • CREATE AGGREGATE deyimini kullanarak kayıtlı derlemeye referans veren kullanıcı tanımlı toplamayı oluşturun.

SQL Server'da CLR kodunun yürütülmesi varsayılan olarak kapalıdır. Yönetilen kod modüllerine başvuran veritabanı nesneleri oluşturabilir, değiştirebilir ve bırakabilirsiniz, ancak clr etkin sunucu yapılandırma seçeneği sp_configurekullanılarak etkinleştirilmediği sürece bu başvurular SQL Server'da yürütülemez.

Microsoft Visual Studio'da bir SQL Server Projesi dağıtıldığında, proje için belirtilen veritabanına bir derleme kaydeder. Projeyi dağıtmak, SqlFunction özniteliği ile işaretlenmiş tüm yöntemler için veritabanında CLR işlevleri de oluşturur. Daha fazla bilgi için bkz. CLR veritabanı nesnelerini dağıtma.

Derleme oluşturma, değiştirme veya kaldırma

Kullanıcı tanımlı toplama oluşturma