可以在在 CLR 程序集中编程的 SQL Server 中创建数据库对象。 可以利用 CLR 提供的丰富编程模型的数据库对象包括触发器、存储过程、函数、聚合函数和类型。
与 Transact-SQL 中提供的内置聚合函数一样,用户定义的聚合函数对一组值执行计算并返回单个值。
在 SQL Server 中创建用户定义的聚合函数涉及以下步骤:
使用 Microsoft .NET Framework 支持的语言将用户定义的聚合函数定义为类。 有关如何在 CLR 中对用户定义的聚合进行编程的详细信息,请参阅 CLR User-Defined 聚合。 编译此类以使用适当的语言编译器生成 CLR 程序集。
使用 CREATE ASSEMBLY 语句在 SQL Server 中注册程序集。 有关 SQL Server 中的程序集的详细信息,请参阅程序集(数据库引擎)。
使用 CREATE AGGREGATE 语句创建引用已注册程序集的用户定义聚合。
注释
在 MicrosoftVisual Studio 中部署 SQL Server 项目在为项目指定的数据库中注册程序集。 部署项目时,还会在数据库中为所有使用 SqlUserDefinedAggregate
属性注释的类定义创建用户定义的聚集。 有关详细信息,请参阅 部署 CLR 数据库对象。
注释
默认情况下,SQL Server 执行 CLR 代码的功能处于关闭状态。 可以创建、更改和删除引用托管代码模块的数据库对象,但这些引用不会在 SQL Server 中执行,除非已启用 clr 的选项 是使用 sp_configure (Transact-SQL) 启用的。
创建、修改或删除程序集
创建用户定义的聚合