Compartir a través de


Crear agregados definidos por el usuario

Puede crear un objeto de base de datos dentro de SQL Server programado en un ensamblado CLR. Los objetos de base de datos que pueden aprovechar el modelo de programación enriquecido proporcionado por CLR incluyen desencadenadores, procedimientos almacenados, funciones, funciones de agregado y tipos.

Al igual que las funciones de agregado integradas proporcionadas en Transact-SQL, las funciones de agregado definidas por el usuario realizan un cálculo en un conjunto de valores y devuelven un único valor.

La creación de una función de agregado definida por el usuario en SQL Server implica los pasos siguientes:

  • Defina la función de agregado definida por el usuario como una clase en un lenguaje compatible con Microsoft .NET Framework. Para obtener más información sobre cómo programar agregados definidos por el usuario en CLR, consulte CLR User-Defined Aggregates. Compile esta clase para compilar un ensamblado CLR mediante el compilador de lenguaje adecuado.

  • Registre el ensamblado en SQL Server mediante la instrucción CREATE ASSEMBLY. Para obtener más información sobre los ensamblados en SQL Server, vea Ensamblados (motor de base de datos).

  • Cree el agregado definido por el usuario que haga referencia al ensamblado registrado mediante la instrucción CREATE AGGREGATE.

Nota:

La implementación de un proyecto de SQL Server en MicrosoftVisual Studio registra un ensamblado en la base de datos especificada para el proyecto. La implementación del proyecto también crea un agregado definido por el usuario en la base de datos para todas las definiciones de clase anotadas con el SqlUserDefinedAggregate atributo . Para obtener más información, vea Deploying CLR Database Objects (Implementación de objetos de base de datos CLR).

Nota:

La capacidad de SQL Server para ejecutar código CLR está desactivada de forma predeterminada. Puede crear, modificar y quitar objetos de base de datos que hacen referencia a módulos de código administrado, pero estas referencias no se ejecutarán en SQL Server a menos que la opción habilitada para clr esté habilitada mediante sp_configure (Transact-SQL).

Para crear, modificar o quitar un ensamblado

Para crear un agregado definido por el usuario

Véase también

Conceptos de programación de integración de Common Language Runtime (CLR)