SQLCLR là khả năng chạy mã .NET trong SQL Server.
Khi mọi người nói về SQLCLR, họ thường đề cập đến khả năng viết mã .NET tùy chỉnh (Thủ tục lưu trữ, Hàm, Triggers, Loại do người dùng xác định và Tập hợp do người dùng xác định). Trong trường hợp này, khả năng này có thể được bật và tắt thông qua tùy chọn máy chủ "clr enable" bên trong sp_configure
và tôi tin rằng nó được gọi là "Tích hợp CLR" trong GUI Cấu hình Surface Area. Thêm chức năng .NET yêu cầu sử dụng CREATE ASSEMBLY để tải mã .NET đã biên dịch vào SQL Server.
Tuy nhiên, ngay cả với tùy chọn "bật clr" được đặt thành 0
/ "tắt" / "bị vô hiệu hóa", chức năng CLR vẫn được sử dụng cho chức năng bên trong và một số chức năng tích hợp và sẽ luôn ở đó, trừ khi "sử dụng sợi Windows" / " tùy chọn tổng hợp nhẹ "được bật.
Để biết mô tả rất chi tiết về SQLCLR là gì, không phải là gì và có thể làm gì, vui lòng xem bài viết mà tôi đã viết về chủ đề này trên SQL Server Central: Stairway to SQLCLR Cấp 1: SQLCLR là gì? (đăng ký miễn phí là cần thiết để xem nội dung trên trang web đó). Phiên bản rút gọn của bài viết đó có sẵn trong câu trả lời StackOverflow sau: Khi nào chúng ta cần một hàm CLR trong SQL Server? .
Nếu bạn muốn biết liệu cá thể có cho phép mã .NET tùy chỉnh được thêm vào cơ sở dữ liệu hay không, hãy chạy phần sau và kiểm tra trường "run_value":
EXEC sp_configure 'clr enabled';
Liên quan đến ý nghĩa của loại chờ SQLCLR trong Trình theo dõi tài nguyên, vui lòng xem bài đăng trên blog sau:
Cách thức hoạt động: Đằng sau danh mục chờ SQLCLR trong SQL Server 2008 Activity Monitor
và tôi tin rằng dòng thích hợp (vì nó liên quan đến danh mục SQLCLR mà bạn đang xem) từ bài đăng đó là:
Những gì tôi tìm thấy là một số Wait_types nên được bỏ qua vì chúng được chờ đợi.