Создание определяемых пользователем статистических функций
Можно создать объект базы данных внутри SQL Server, который запрограммирован в сборке CLR. В число объектов базы данных, способных эффективно использовать предоставляемую средой CLR многофункциональную модель программирования, входят триггеры, хранимые процедуры, функции, статистические функции и типы.
Подобно встроенным статистическим функциям, предоставленным в Transact-SQL, пользовательские статистические функции производят вычисление в ряде значений и возвращают одиночное значение.
Создание пользовательской статистической функции в SQL Server включает в себя следующие шаги.
Определите пользовательскую статистическую функцию как класс на языке, поддерживаемом платформой Microsoft .NET. Дополнительные сведения о программировании определяемых пользователем статистических функций в среде CLR см. в разделе Пользовательские статистические функции среды CLR. Скомпилируйте этот класс для построения сборки среды CLR, используя соответствующий языку компилятор.
Зарегистрируйте сборку в SQL Server с помощью инструкции CREATE ASSEMBLY. Дополнительные сведения о сборках в SQL Server см. в разделе Сборки (компонент Database Engine).
Создайте пользовательское статистическое выражение, которое ссылается на зарегистрированную сборку, используя инструкцию CREATE AGGREGATE.
Примечание |
---|
При развертывании проекта SQL Server в MicrosoftVisual Studio сборка регистрируется в базе данных, указанной для данного проекта. Развертывание проекта также создает пользовательские статистические функции в базе данных для всех классов, которые могут иметь атрибут SqlUserDefinedAggregate. Дополнительные сведения см. в разделе Развертывание объектов базы данных CLR. |
Примечание |
---|
Возможность SQL Server выполнять код CLR по умолчанию отключена. Можно создавать, изменять и удалять объекты базы данных, которые ссылаются на модули управляемого кода, но эти ссылки не будут выполнены в SQL Server, пока параметр clr enabled не получит значение True с помощью хранимой процедуры sp_configure (Transact-SQL). |
Создание, изменение или удаление сборки
Создание пользовательской статистической функции
См. также