Nasıl bırakıp SQL Server (2008 R2) derleme yeniden oluşturmak zorunda kalmadan bir CLR işlevi (veya yordam) derleme dll güncelleştirebilirim?
Bir montaj (örneğin yeni bir işlev eklemek için) güncellerseniz şimdi duruyor gibi, SQL Server, derleme bırakılana kadar güncelleştirilmiş dll onur olmaz:
DROP ASSEMBLY CLRFunctions
Msg 6590, Level 16, State 1, Line 1
DROP ASSEMBLY failed because 'CLRFunctions' is referenced by object 'NormalizeString'.
Ama montajı bırakmadan önce, ilk olarak referans veren tüm fonksiyonları bırakmalıyım :
DROP FUNCTION NormalizeString
DROP FUNCTION RemoveDiacritics
DROP FUNCTION RemoveCombiningDiacritics
DROP FUNCTION CombineLigatures
....
DROP FUNCTION PseudolocalizeArabic
Ve sonra montajı bırakabilirim:
DROP ASSEMBLY CLRFunctions
Şimdi meclisi " oluşturmak " zorunda:
CREATE ASSEMBLY CLRFunctions FROM 'c:\foos\CLRFunctions.dll';
Ve şimdi ben tüm UDF en Bunun beyanı avlamak zorunda edildi i, silinmeden önce kayıtlı.
yerine bir derleme güncelleştirmek ve SQL Server kullanmaya başlar.
Güncelleme : rastgele DBCC FREEPROCCACHE
bir "yeniden derleme" zorlamaya çalıştı , ancak SQL Server hala eski kodu kullanır.
Güncelleme : derleme dll sildim CLRFunctions.dll
ve SQL Server hala (imkansız olması gereken kod olmadan) kodu çalıştırmak mümkün.