Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Объект базы данных можно создать внутри SQL Server, который запрограммирован в сборке СРЕДЫ CLR. Объекты базы данных, которые могут использовать расширенную модель программирования, предоставляемую средой CLR, включают триггеры, хранимые процедуры, функции, агрегатные функции и типы.
Как и встроенные агрегатные функции, предоставляемые в Transact-SQL, определяемые пользователем агрегатные функции выполняют вычисление набора значений и возвращают одно значение.
Создание определяемой пользователем агрегатной функции в SQL Server включает следующие действия.
Определите определяемую пользователем агрегатную функцию в качестве класса на языке, поддерживаемом корпорацией Майкрософт платформа .NET Framework. Дополнительные сведения о программе определяемых пользователем агрегатов в среде CLR см. в разделе CLR User-Defined Агрегаты. Скомпилируйте этот класс для построения сборки среды CLR, используя соответствующий языку компилятор.
Зарегистрируйте сборку в SQL Server с помощью инструкции CREATE ASSEMBLY. Дополнительные сведения о сборках в SQL Server см. в разделе "Сборки" (ядро СУБД).
Создайте определяемую пользователем агрегатную функцию, которая ссылается на зарегистрированную сборку, с помощью инструкции CREATE AGGREGATE.
Замечание
Развертывание проекта SQL Server в MicrosoftVisual Studio регистрирует сборку в базе данных, указанной для проекта. При развертывании проекта также создается определяемый пользователем агрегат в базе данных для всех определений классов, аннотированных атрибутом SqlUserDefinedAggregate . Дополнительные сведения см. в разделе "Развертывание объектов базы данных CLR".
Замечание
Возможность SQL Server выполнять код CLR по умолчанию отключена. Можно создавать, изменять и удалять объекты базы данных, ссылающиеся на модули управляемого кода, но эти ссылки не будут выполняться в SQL Server, если параметр clr не включен с помощью sp_configure (Transact-SQL).
Создание, изменение или удаление сборки
Чтобы создать определяемый пользователем агрегат
См. также
Концепции программирования интеграции с Common Language Runtime (CLR)