Bir derleme değiştirme
Derlemeler olarak kayıtlı olan SQL Serverdaha yeni bir sürüm alter assembly deyimi kullanılarak güncelleştirilebilir. Derleme güncelleştirmek için alter assembly deyimi aşağıdaki sözdizimiyle kullanın:
ALTER ASSEMBLY SQLCLRTest
FROM 'C:\MyDBApp\SQLCLRTest.dll'
ALTER ASSEMBLY SQLCLRTest
FROM 'C:\MyDBApp\SQLCLRTest.dll'
alter assembly, derleme kullanarak çalışan işlemlerin kesintiye uğratmak değil; süreçleri ile değiştirilmemiş derleme yürütme devam. alter assembly, ortak dil çalışma zamanı (clr) işlevleri, toplama işlevleri, saklı yordamları ve Tetikleyicileri imzalarını değiştirmek için kullanılamaz. Yeni kamu yöntemleri eklenebilir derlemesi için özel yöntemler herhangi bir şekilde değiştirilebilir ve imzalar ya da öznitelikleri değişmez sürece public yöntemler değiştirilebilir. alter assembly kullanarak veri üyeleri ya da temel sınıflar da dahil olmak üzere bir yerel seri hale kullanıcı tanımlı türü içinde yer alan alanları değiştirilemez. Tüm diğer değişiklikleri desteklenmez. Daha fazla bilgi için, bkz. alter assembly (Transact-sql).
Derleme izin kümesi değiştirme
Derleme izin kümesi de alter assembly deyimi kullanılarak değiştirilebilir. CREATE derleme izin kümesi aşağıdaki deyimi değiştirir EXTERNAL_ACCESS.
ALTER ASSEMBLY SQLCLRTest
WITH PERMISSION_SET = EXTERNAL_ACCESS
ALTER ASSEMBLY SQLCLRTest
WITH PERMISSION_SET = EXTERNAL_ACCESS
Derleme izin kümesi--dan değiştirilirse SAFEiçin EXTERNAL_ACCESSveya UNSAFEbir asimetrik anahtar ve ilgili giriş EXTERNAL ACCESS ASSEMBLYizni veya UNSAFE ASSEMBLYderleme izni ilk oluşturulmalıdır. Daha fazla bilgi için, bkz. Derleme oluşturma.
Derleme kaynak kodu ekleme
Dosya Ekle yan tümcesinde alter assembly sözdizimi create ASSEMBLY'de yok. Kaynak kodu veya bir derleme ile ilgili diğer dosyaları eklemek için kullanabilirsiniz. Dosyalar özgün konumlarından kopyalanır ve veritabanındaki sistem tablolarında depolanır. Bu, her zaman kaynak kodunu veya diğer dosyaları yandan hiç yeniden oluşturun veya belgeyi udt sürümü gerekir sağlar.
Aşağıdaki ifadeyi noktası udt Point.cs sınıfı kaynak kodunu ekler. Bu Point.cs dosyasının içerdiği metni kopyalar ve onu "PointSource" adı altında veritabanında depolar.
ALTER ASSEMBLY Point
ADD FILE FROM 'C:\Projects\Point\Point.cs' AS PointSource