Übersicht über die CLR-Integration (Common Language Runtime)

Microsoft SQL Server beinhaltet jetzt die Integration der CLR-Komponente (Common Language Runtime) von .NET Framework für Microsoft Windows. Die CLR-Komponente stellt verwalteten Code mit Diensten bereit, wie z. B. sprachübergreifende Integration, Codezugriffssicherheit, Verwaltung der Objektlebensdauer und Debug- und Profilerstellungsunterstützung. Für SQL Server-Benutzer und -Anwendungsentwickler bedeutet die CLR-Integration, dass sie nunmehr gespeicherte Prozeduren, Trigger, benutzerdefinierte Typen, benutzerdefinierte Funktionen (Skalar- und Tabellenwertfunktionen) sowie benutzerdefinierte Aggregatfunktionen mit einer beliebigen .NET Framework-Sprache, einschließlich Microsoft Visual Basic .NET und Microsoft Visual C#, schreiben können. Beachten Sie, dass Visual Studio .NET 2003 nicht zur Programmierung der CLR-Integration verwendet werden kann. SQL Server umfasst die vorinstallierte Version von .NET Framework 2.0 SP1, und Visual Studio .NET 2003 kann die Assemblys von .NET Framework 2.0 nicht verwenden.

Zu den Hauptvorteilen dieser Integration zählen folgende:

  • **Ein besseres Programmiermodell.**Die .NET Framework-Sprachen sind in vielerlei Hinsicht umfassender als Transact-SQL. Sie bieten Konstrukte und Funktionen, die SQL Server-Entwicklern bisher nicht zur Verfügung standen. Entwickler können zudem die leistungsfähigen Funktionen der .NET Framework-Bibliothek nutzen, die einen umfassenden Satz Klassen bereitstellt. Diese ermöglichen es, Programmierungsprobleme schnell und effizient zu lösen.

  • **Verbesserte Sicherheit und Zuverlässigkeit.**Verwalteter Code wird in einer CLR-Umgebung ausgeführt, die vom Datenbankmodul gehostet wird. SQL Server nutzt diesen Umstand, um eine sicherere und zuverlässigere Alternative zu den erweiterten gespeicherten Prozeduren bereitzustellen, die in früheren Versionen von SQL Server zur Verfügung standen.

  • **Fähigkeit, Datentypen und Aggregatsfunktionen zu definieren.**Benutzerdefinierte Typen und benutzerdefinierte Aggregate sind zwei neue verwaltete Datenbankobjekte, die die Speicher- und Abfragefunktionen von SQL Server erweitern.

  • **Rationalisierte Entwicklung durch eine standardisierte Umgebung.**Die Datenbankentwicklung ist in zukünftige Versionen der Microsoft Visual Studio .NET-Entwicklungsumgebung integriert. Entwickler verwenden für das Entwickeln und Debuggen von Datenbankobjekten und Skripts dieselben Tools wie für das Schreiben von .NET Framework-Komponenten und -Diensten auf mittlerer Ebene oder Clientebene.

  • **Potenziell verbesserte Leistung und Skalierbarkeit.**In vielen Situationen sorgen die Kompilierungs- und Ausführungsmodelle der .NET Framework-Sprachen für eine verbesserte Leistungsfähigkeit gegenüber Transact-SQL.

In der folgenden Tabelle sind die Themen dieses Abschnitts aufgeführt.