clr kullanıcı tanımlı türler

SQL Serveroluşturulan derleme karşı programlanmış veritabanı nesnelerini oluşturma olanağı sağlar .NET Framework ortak dil çalışma zamanı (clr). clr tarafından sağlanan zengin programlama modeli yararlanabilirsiniz veritabanı nesneleri, Tetikleyiciler, saklı yordamları, işlevleri, toplama işlevleri ve türleri içerir.

[!NOT]

clr kod yürütme yeteneğini varsayılan olarak off için ayarlanır SQL Server. clr kullanılarak etkinleştirilebilir sp_configure sistem saklı yordamını.

İle başlayan SQL Server 2005, kullanıcı tanımlı türler (UDTs) depolama clr nesneleri Etkinleştirme sunucusu, skalar türü sistemi genişletmek için kullanabileceğiniz bir SQL Serververitabanı. UDTs birden çok öğeleri içerebilir ve davranışlar, bunları tek bir grafiklerden geleneksel diğer veri türlerinden ayırt olabilir SQL Serversistem veri türü.

UDTs bir bütün olarak sistem tarafından erişilebilir olduğundan, bunların kullanımı karmaşık veri türleri performansını olumsuz. Karmaşık veri genellikle en iyi geleneksel satırları ve tabloları kullanılarak modellenmiştir. UDTs SQL Serverşu şekilde uygundur:

  • Tarih, Saat, para birimi ve genişletilmiş sayısal türleri

  • Geospatial uygulamaları

  • Kodlanmış veya şifrelenmiş veri

Geliştirme UDTs işlemi SQL Serveraşağıdaki adımlardan oluşur:

  1. udt tanımlar derleme oluşturma ve kod. Tarafından desteklenen tüm dilleri kullanarak UDTs tanımlanır.Doğrulanabilir kod üreten .NET Framework ortak dil çalışma zamanı (clr). Bu, Visual C# ve Visual Basic içerir.NET. Veri alanları ve özellikleri maruz bir .NET Framework sınıf veya yapı ve davranış yöntemleri sınıf veya yapı tarafından tanımlanır.

  2. **Derleme kaydolun.**UDTs dağıtılmış veritabanı proje veya kullanarak Visual Studio kullanıcı arabiriminden Transact-SQLsınıf ya da yapının bir veritabanına içeren derleme kopyalar create assembly deyimi.

  3. **SQL Server'da udt oluşturun.**Derleme ana veritabanına yüklendikten sonra Transact-SQLudt oluşturun ve sınıf ya da yapının üyelerinin udt bir üyesi olarak duyurmak için create type deyimi. UDTs yalnızca tek bir veritabanı içeriğinde mevcut ve kayıtlı hiçbir bağımlılık içinden oluşturuldukları harici dosyaları var.

    [!NOT]

    Önce SQL Server 2005, UDTs mahluk--dan.net Framework birleştirmeler desteklenmez. Ancak, yine de kullanabilirsiniz SQL Serverkullanarak diğer veri türleri sp_addtype. Hem yerli oluşturmak için create type sözdizimi kullanılabilir SQL Serverkullanıcı tanımlı veri türleri ve UDTs.

  4. Tablolar, değişkenler veya parametreler kullanarak udt oluşturun ile başlayan SQL Server 2005, bir kullanıcı tanımlı türü tablo sütun tanımı bir değişken olarak kullanılabilir bir Transact-SQLtoplu, ya da bir bağımsız değişken olarak bir Transact-SQL, işlev veya saklı yordam. Ek bilgi için bkz: Working with CLR User-defined Types.

Bu Bölümde