Wprowadzenie do integracji środowiska CLR programu SQL Server

Środowisko uruchomieniowe języka wspólnego (CLR) jest sercem .NET Framework i zapewnia środowisko wykonywania dla wszystkich .NET Framework kodu. Kod uruchamiany w clR jest nazywany kodem zarządzanym. ClR udostępnia różne funkcje i usługi wymagane do wykonywania programu, w tym kompilację just in time (JIT), przydzielanie pamięci i zarządzanie nią, wymuszanie bezpieczeństwa typu, obsługa wyjątków, zarządzanie wątkami i zabezpieczenia.

Za pomocą środowiska CLR hostowanego w usłudze Microsoft SQL Server (nazywanej integracją CLR) można tworzyć procedury składowane, wyzwalacze, funkcje zdefiniowane przez użytkownika, typy zdefiniowane przez użytkownika i agregacje zdefiniowane przez użytkownika w kodzie zarządzanym. Ponieważ kod zarządzany jest kompilowany do kodu natywnego przed wykonaniem, można osiągnąć znaczny wzrost wydajności w niektórych scenariuszach.

Kod zarządzany uruchomiony na .NET Framework używa zabezpieczeń dostępu kodu (CAS), linków kodu i domen aplikacji, aby zapobiec wykonywaniu określonych operacji przez zestawy. SQL Server używa serwera CAS w celu zabezpieczenia kodu zarządzanego i zapobiegania naruszeniu zabezpieczeń systemu operacyjnego lub serwera bazy danych.

Uwaga

Zabezpieczenia dostępu kodu (CAS) zostały uznane za przestarzałe we wszystkich wersjach .NET Framework i .NET. Najnowsze wersje platformy .NET nie honorują adnotacji CAS i generują błędy, jeśli są używane interfejsy API związane z usługą CAS. Deweloperzy powinni szukać alternatywnych sposobów wykonywania zadań zabezpieczeń.

Ta sekcja ma na celu dostarczenie tylko wystarczającej ilości informacji, aby rozpocząć programowanie z SQL Server integracji środowiska CLR i nie jest przeznaczona do kompleksowego. Aby uzyskać bardziej szczegółowe informacje, zobacz Omówienie integracji środowiska uruchomieniowego języka wspólnego (CLR).

Włączanie integracji środowiska CLR

Funkcja integracji środowiska uruchomieniowego języka wspólnego (CLR) jest domyślnie wyłączona w programie Microsoft SQL Server i musi być włączona, aby można było używać obiektów implementowanych przy użyciu integracji środowiska CLR. Aby włączyć integrację środowiska CLR przy użyciu języka Transact-SQL, użyj clr enabled opcji sp_configure procedury składowanej, jak pokazano poniżej:

SQL
sp_configure 'clr enabled', 1  
GO  
RECONFIGURE  
GO  

Integrację środowiska CLR można wyłączyć, ustawiając clr enabled opcję na 0. Po wyłączeniu integracji środowiska CLR SQL Server przestanie wykonywać wszystkie procedury CLR i zwalnia wszystkie domeny aplikacji.

Aby uzyskać bardziej szczegółowe informacje, zobacz Enabling CLR Integration (Włączanie integracji środowiska CLR).

Wdrażanie zestawu CLR

Po przetestowaniu i zweryfikowaniu metod CLR na serwerze testowym można je dystrybuować do serwerów produkcyjnych przy użyciu skryptu wdrażania. Skrypt wdrażania można wygenerować ręcznie lub przy użyciu SQL Server Management Studio. Aby uzyskać bardziej szczegółowe informacje, zobacz wersję SQL Server dokumentację dotyczącą używanej wersji SQL Server.

dokumentacja SQL Server

  1. Wdrażanie obiektów bazy danych CLR

Zabezpieczenia integracji środowiska CLR

Model zabezpieczeń integracji SQL Server firmy Microsoft z środowiskiem uruchomieniowym języka wspólnego firmy Microsoft .NET Framework (CLR) zarządza i zabezpiecza dostęp między różnymi typami obiektów CLR i innych niż CLR uruchomionych w SQL Server. Te obiekty mogą być wywoływane przez instrukcję Języka Transact-SQL lub inny obiekt CLR uruchomiony na serwerze.

Aby uzyskać bardziej szczegółowe informacje, zobacz CLR Integration Security.

Debugowanie zestawu CLR

Program Microsoft SQL Server zapewnia obsługę debugowania obiektów języka Transact-SQL i środowiska uruchomieniowego języka wspólnego (CLR) w bazie danych. Debugowanie działa w różnych językach: użytkownicy mogą bezproblemowo przechodzić do obiektów CLR z języka Transact-SQL i na odwrót.

Aby uzyskać bardziej szczegółowe informacje, zobacz Debugowanie obiektów bazy danych CLR.

Zobacz też