SQL Server позволяет расширять собственные возможности за счет создания расширений с интеграцией со средой CLR. Среда CLR является основй платформы .NET предоставляет среду выполнения для управляемого кода. Таким образом, мжоно разрабатывать в управляемом коде хранимые процедуры, триггеры, пользовательские функции и типы.
Основные причины использования SQLCLR:
- Увеличение производительности некоторых операций.
- Добавление возможностей, которых нет в штатных механизмах SQL Server.
В целом, SQLCLR не является регулярным решением и его использование должно быть хорошо обосновано.
Список некоторых проектов SQLCLR можно найти на этой странице.
Материалы по теме.
-
Знакомство с интеграцией CLR в SQL Server - официальная документация для начала работы со SQLCLR.
-
Использование SQLCLR для увеличения производительности - небольшой пример использования SQLCLR для оптимизации производитлеьности.
-
Getting started with SQL Server CLR functions - простой пример создания собственного расширения SQLCLR и его регистрации в SQL Server.
-
SQLCLR vs. T-SQL - Performance Comparison - небольшое сравнение производительности T-SQL и SQLCLR для объяснения когда и что лучше использовать.
-
SQL Server CLR Introduction - простая вводная в SQLCLR.
-
Серия статей про SQLCLR на sqlservercentral.com:
- Stairway to SQLCLR Level 1: What is SQLCLR?
- Stairway to SQLCLR Level 2: Sample Stored Procedure and Function
- Stairway to SQLCLR Level 3: Security (General and SAFE Assemblies)
- Stairway to SQLCLR Level 4: Security (EXTERNAL and UNSAFE Assemblies)
- Stairway to SQLCLR Level 5: Development (Using .NET within SQL Server)
- Stairway to SQLCLR Level 6: Development Tools Intro
- Stairway to SQLCLR Level 7: Development and Security
- Stairway to SQLCLR Level 8: Using Visual Studio to Work around SSDT