Erstellen benutzerdefinierter Aggregate

Microsoft SQL Server 2005 bietet die Möglichkeit, ein Datenbankobjekt in SQL Server zu erstellen, das in einer CLR-Assembly programmiert wird. Datenbankobjekte, die das reichhaltige Programmiermodell nutzen können, das von der CLR (Common Language Runtime) bereitgestellt wird, sind z. B. Trigger, gespeichert Prozeduren, Funktionen, Aggregatfunktionen und Typen.

Ebenso wie die integrierten Aggregatfunktionen, die in Transact-SQL bereitgestellt werden, führen benutzerdefinierte Aggregatfunktionen Berechnungen für eine Menge von Werten aus und geben einen einzelnen Wert zurück.

Das Erstellen einer benutzerdefinierten Aggregatfunktion in SQL Server umfasst die folgenden Schritte:

  • Definieren der benutzerdefinierten Aggregatfunktion als Klasse in einer von Microsoft .NET Framework unterstützten Sprache. Weitere Informationen zum Programmieren benutzerdefinierter Aggregate in der CLR finden Sie unter CLR User-Defined Aggregates. Kompilieren dieser Klasse mithilfe des entsprechenden Sprachcompilers, um eine Assembly zu erstellen.
  • Registrieren der Assembly in SQL Server mithilfe der CREATE ASSEMBLY-Anweisung. Weitere Informationen zu Assemblys in SQL Server finden Sie unter Assemblys (Database Engine).
  • Erstellen des benutzerdefinierten Aggregats, das auf die registrierte Assembly verweist, mithilfe der CREATE AGGREGATE-Anweisung.
ms190678.note(de-de,SQL.90).gifHinweis:
Bei der Bereitstellung eines SQL Server-Projekts in Microsoft Visual Studio wird eine Assembly in der Datenbank registriert, die für das Projekt angegeben wurde. Beim Bereitstellen des Projekts wird in der Datenbank auch ein benutzerdefiniertes Aggregat für alle Klassendefinitionen erstellt, die mit dem SqlUserDefinedAggregate-Attribut versehen sind. Weitere Informationen finden Sie unter Deploying CLR Database Objects.
ms190678.note(de-de,SQL.90).gifHinweis:
Die Funktion zum Ausführen von CLR-Code ist in SQL Server standardmäßig deaktiviert. Sie können Datenbankobjekte, die auf verwaltete Codemodule verweisen, erstellen, ändern oder löschen; diese Verweise werden jedoch nur dann in SQL Server ausgeführt, wenn die clr enabled-Option mithilfe von sp_configure (Transact-SQL) aktiviert wird.

So erstellen, ändern oder löschen Sie eine Assembly

So erstellen Sie ein benutzerdefiniertes Aggregat

Siehe auch

Andere Ressourcen

Implementieren benutzerdefinierter Funktionen
Database Engine .NET Framework Programming

Hilfe und Informationen

Informationsquellen für SQL Server 2005