Поделиться через


Создание объектов базы данных с интеграцией со средой 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