Karena kode ini awalnya digunakan dengan prosedur tersimpan yang diperluas, sepertinya ini adalah kode yang tidak dikelola. Bug dalam kode yang tidak dikelola dapat dengan mudah merusak proses Anda.
Integrasi CLR jauh lebih kuat daripada prosedur tersimpan yang diperluas, tetapi kode masih berjalan dalam proses, sehingga kesalahan dapat menghapus atau merusak SQL Server. (Sebagai perbandingan, secara teori, rutinitas SAFE CLR tidak akan dapat merusak SQL Server meskipun dapat menyebabkan masalah yang mengurangi ketersediaan server Anda tanpa menghapus SQL Server secara total.)
Pada dasarnya, satu-satunya cara agar SQL Server tidak crash dalam skenario ini adalah:
- Hindari penggunaan fungsi yang mogok.
- Perbaiki kode buggy.
- Jalankan kode dalam proses terpisah (luncurkan executable, panggil layanan Windows, panggil layanan web, dll.). Anda dapat menulis .NET DLL terkelola untuk melakukan interaksi ini. Kemungkinan besar, Anda masih perlu memuatnya TIDAK AMAN, tetapi--jika ditulis dengan benar--pada kenyataannya itu bisa sangat aman.