Share via


Assemblies uygulama

Bu konu, uygulamak ve derlemeler veritabanında çalışmak yardımcı olmak için aşağıdaki alanları hakkında bilgi sağlar:

  • Birleştirmeler oluşturma

  • Derlemeler değiştirme

  • Bırakarak, devre dışı bırakma ve etkinleştirme birleştirmeler

  • derleme sürümleri yönetme

Birleştirmeler oluşturma

Derlemeler oluşturulur SQL Server kullanarak Transact-SQL DERLEME oluşturma deyim veya SQL Server Management Studio kullanarak derleme Yardımlı Düzenleyicisi.Additionally, deploying a SQL Server Project in Microsoft Visual Studio registers an assembly in the database that was specified for the project.Daha fazla bilgi için bkz: clr veritabanı nesnelerini dağıtma.

Transact-sql kullanarak bir derleme oluşturmak için

sql Server Management Studio'yu kullanarak derleme oluşturmak için

Derlemeler değiştirme

Derlemeler değiştirilmiş SQL Server kullanarak Transact-SQL alter assembly deyim veya SQL Server Management Studio kullanarak derleme Yardımlı Düzenleyicisi.Değiştirebileceğiniz bir derleme aşağıdakileri yapmak istediğinizde:

  • Derleme ikili dosyaların daha yeni bir sürüm karşıya yükleyerek assembly uygulamasını değiştirin.Daha fazla bilgi için bkz: Birleştirme sürümleri yönetme bu konuda daha sonra.

  • Derleme izin küme değiştirin.Daha fazla bilgi için bkz: Assemblies tasarlama.

  • Derleme görünürlüğünü değiştirebilirsiniz.Görünür derlemeler başvuran için kullanılabilir SQL Server.Bunlar veritabanında karşıya olsa bile, nonvisible derlemeler, kullanılabilir değil.Derlemeler varsayılan olarak yüklenen bir örnek , SQL Server görülebilir.

  • İlişkili bir hata ayıklama veya kaynak dosya ekledikten veya derleme.

Transact-sql kullanarak bir derleme değiştirme

sql Server Management Studio'yu kullanarak derleme değiştirmek için

Bırakarak, devre dışı bırakma ve etkinleştirme birleştirmeler

Derlemeler atlanıyor kullanarak Transact-SQL drop assembly deyim veya SQL Server Management Studio.

Transact-sql kullanarak bir derleme bırakmak için

sql Server Management Studio'yu kullanarak derleme bırakmak için

Varsayılan olarak, oluşturulan tüm derlemelere SQL Server yürütülmesini devre dışı bırakıldı.Kullanabileceğiniz clr etkin seçeneği sp_configure sistem saklı yordamı , karşıya yüklenen tüm derlemelere yürütülmesini etkinleştirmek veya devre dışı bırakmak SQL Server.Derleme yürütme devre dışı bırakma, ortak dil çalışma zamanı (clr) işlevleri, saklı yordamlar, tetikleyiciler, toplamları ve kullanıcı tanımlı türler yürütülmesini engeller ve halen yürütülmekte olan durur.Derleme yürütme devre dışı bırakılması oluşturmak, değiştirmek veya derlemeler bırak özelliğini devre dışı değil.Daha fazla bilgi için bkz: CLR seçeneği etkinleştirildi.

Derleme yürütme etkinleştirme ve devre dışı bırakmak için

Birleştirme sürümleri yönetme

Ne zaman bir derleme karşıya için bir örnek SQL Server, derleme depolanan ve yönetilen içinde veritabanı sistem kataloglar.Any changes made to the definition of the assembly in the Microsoft .NET Framework should be propagated to the assembly that is stored in the database catalog.

Bir derleme değiştirmek zorunda, bir derleme veritabanında güncelleştirmek için alter assembly deyim kesmeniz gerekir.Bu derleme en son kopyasını güncelleştirir .NET Framework Modüller üstlenen kendi uygulama.

DENETLENMEYEN veri ile yan tümce tümce tümcesini alter assembly deyim söyler SQL Server bile bu derlemeleri dayalı olacağı veritabanındaki verileri kalıcı yenilemek için olan bağımlı.Özellikle, aşağıdaki var varsa DENETLENMEYEN veri ile belirtmeniz gerekir:

  • Yöntemleri başvuru hesaplanmış sütunlar kalıcı derleme, doğrudan veya dolaylı olarak, üzerinden Transact-SQL İşlevler veya yöntemler.

  • Sütunları bir CLR kullanıcı tanımlı tür derlemede bağlıdır ve türünü uygulayan bir kullanıcı tanımlı (olmayan-yerel) seri hale getirme biçimi.

Dikkat notuDikkat

DENETLENMEYEN veri ile belirtilirse, SQL Server çalışır önleme alter assembly yürütülmesini, yeni derleme sürüm etkiler varolan veri tabloları, dizinler, veya kalıcı diğer siteler.Ancak, SQL Server hesaplanmış sütunları, dizinleri, dizin oluşturulmuş görünümler veya ifadeleri temel yordamları ile tutarlı olacaktır garanti etmez ve ne zaman türler clr derleme güncelleştirilir.Sonucu arasında uyuşmazlık olduğundan emin olmak için alter assembly yürüttüğünüzde dikkatli bir ifade ve üzerindeki temel alan bir değer ifade derleme depolanan.

Yalnızca üyeleri db_owner ve db_ddlowner sabit veritabanı rolü ile DENETLENMEYEN veri yan tümce tümce tümce kullanarak yürütmek alter assembly yürütebilirsiniz.

SQL Server posts a message to the Windows application event log that the assembly has been modified with unchecked data in the tables.SQL Server then marks any tables that contain data dependent on the assembly as having unchecked data.The has_unchecked_assembly_data column of the sys.tables catalog view contains the value 1 for tables that contain unchecked data, and 0 for tables without unchecked data.

Denetlenmeyen veri bütünlüğünü gidermek için dbcc DENETLEME çalıştırmaktablo her tablo olan denetlenmeyen veri.dbcc checktable başarısız olursa, ya da geçerli değil veya derleme kod sorunları için değiştirme tablo satırları silin ve gerekir sonra ek alter assembly deyimleri çıkış.

alter assembly derleme sürüm değiştirir.Kültür ve ortak anahtar belirteci, derleme aynı kalır.sql Server izin vermez farklı sürümlerini kaydetme bir derleme ile aynı adı, kültür ve ortak anahtar.

Bilgisayar genelindeki ilkesiyle sürüm bağlama için etkileşimler

Depolanan derlemelerine başvurular, SQL Server yönlendirilir yayımcı ilkesi veya bilgisayar genelindeki yönetici İlkesi kullanarak belirli sürümleri için aşağıdakilerden birini yapmanız gerekir:

  • Veritabanında bu yönlendirmenin yapıldığı yeni sürüm olduğundan emin olun.

  • Veritabanında belirli sürüm oldukları emin olmak için bilgisayar veya publisher ilkesinin dış ilke dosyalarını bildirisinden değiştirin.

Aksi takdirde, örnek için yeni bir derleme sürüm yükleme denemesi SQL Server will fail.

Bir derleme sürüm güncelleştirmek için