Crear funciones de agregado definidas por el usuario

Microsoft SQL Server 2005 permite crear un objeto de base de datos en SQL Server programado en un ensamblado CLR. Los objetos de base de datos que pueden aprovechar el completo modelo de programación que proporciona CLR incluyen desencadenadores, procedimientos almacenados, funciones, funciones de agregado y tipos.

Al igual que las funciones de agregado integradas que proporciona 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 estos pasos:

  • Establecer la función de agregado definida por el usuario como una clase en un lenguaje de Microsoft compatible con .NET Framework. Para obtener más información sobre la programación de funciones de agregado definidas por el usuario en CRL, vea CLR User-Defined Aggregates. Compile esta clase para generar un ensamblado CRL con el compilador de lenguaje correspondiente.
  • Registrar el ensamblado en SQL Server con la instrucción CREATE ASSEMBLY. Para obtener más información acerca de los ensamblados de SQL Server, vea Ensamblados (motor de base de datos).
  • Crear la función de agregado definida por el usuario que hace referencia al ensamblado registrado con la instrucción CREATE AGGREGATE.

[!NOTA] La implementación de un proyecto de SQL Server en Microsoft Visual 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 atributo SqlUserDefinedAggregate. Para obtener más información, vea Deploying CLR Database Objects.

[!NOTA] La capacidad de SQL Server para ejecutar el código CLR se encuentra desactivada de manera predeterminada. Puede crear, modificar y quitar objetos de base de datos que hacen referencia a los módulos de códigos administrados; sin embargo, estas referencias no se ejecutarán en SQL Server a menos que se haya activado la opción clr enabled mediante sp_configure (Transact-SQL).

Para crear, modificar o quitar un ensamblado

Para crear una función de agregado definida por el usuario

Vea también

Otros recursos

Implementar funciones definidas por el usuario
Database Engine .NET Framework Programming

Ayuda e información

Obtener ayuda sobre SQL Server 2005