Создание объектов базы данных с интеграцией со средой CLR

Применимо к:SQL Server

Объекты базы данных можно создавать с помощью интеграции SQL Server с средой CLR платформа .NET Framework. Управляемый код, который выполняется в Microsoft SQL Server, называется "подпрограммой CLR". К этим подпрограммам относятся:

  • определяемые пользователем функции, возвращающие скалярное значение (скалярные определяемые пользователем функции);

  • определяемые пользователем функции, возвращающие табличные значения (возвращающие табличное значение функции);

  • определяемые пользователем процедуры (определяемые пользователем процедуры);

  • определяемые пользователем триггеры.

Подпрограммы CLR в управляемом коде имеют одинаковую структуру. Они сопоставляются с открытыми статическими (общими в Microsoft Visual Basic .NET) методами класса. Кроме подпрограмм, с помощью .NET Framework можно определять пользовательские типы (UDT) и определяемые пользователем агрегатные функции. Определяемые пользователем типы и определяемые пользователем статистические функции сопоставляются с целыми классами .NET Framework.

Каждый тип подпрограммы платформа .NET Framework имеет объявление Transact-SQL и может использоваться в любом месте SQL Server, что может использоваться эквивалент Transact-SQL. Например, скалярные определяемые пользователем функции могут использоваться во всех скалярных выражениях. Возвращающая табличное значение функция может использоваться в любом предложении FROM. Процедура может вызываться в инструкции EXEC или из клиентского приложения.

Примечание

Выполнение объекта CLR (определяемой пользователем функции, определяемого пользователем типа или триггера) в среде CLR может производиться в нескольких потоках (параллельный план), если оптимизатор запросов посчитает это более выгодным. Однако если определяемая пользователем функция обращается к данным, выполнение будет выполняться в последовательном плане. При выполнении на сервере версии, предшествующей SQL Server 2008 (10.0.x), если определяемая пользователем функция содержит бизнес-параметры или возвращаемые значения, выполнение также должно выполняться в последовательном плане.

В следующей таблице приводится список подразделов этого раздела.

Приступая к работе с интеграцией со средой CLR
Краткий обзор библиотек и пространств имен, необходимых для компиляции объекта с помощью интеграции среды CLR с SQL Server. Включает пример хранимой процедуры CLR «Hello World».

Поддерживаемые библиотеки платформы .NET Framework
Содержит сведения о библиотеках .NET Framework, поддерживаемых интеграцией со средой CLR.

Ограничения модели программирования на основе интеграции со средой CLR
Содержит сведения об ограничениях модели программирования интеграции со средой CLR.

Типы данных SQL Server в платформе .NET Framework
Общие сведения о типах данных SQL Server и их эквивалентах платформа .NET Framework.

Общие сведения о пользовательских атрибутах интеграции со средой CLR
Содержит сведения о пользовательских атрибутах интеграции со средой CLR.

Определяемые пользователем функции среды CLR
Описывает реализацию и использование различных типов функций CLR: возвращающих табличное значение, скалярных и определяемых пользователем агрегатных функций.

Определяемые пользователем типы CLR
Показывает, как реализовать и использовать определяемые пользователем типы данных CLR.

Хранимые процедуры CLR
Показывает, как реализовать и использовать хранимые процедуры CLR.

Триггеры CLR
Показывает, как реализовать и использовать триггеры CLR.

См. также:

Общие сведения об интеграции со средой CLR