Freigeben über


AdventureWorks Cycles CLR Layer

Das Beispiel "AdventureWorks Cycles CLR Layer" für SQL Server 2005 stellt nützliche Dienstprogramme bereit, die eine zusätzliche Funktionalitätsschicht auf der einfachen AdventureWorks-Beispieldatenbank bilden. Das erste Dienstprogramm erstellt Kontaktdatensätze für die verschiedenen Personen, die mit der AdventureWorks-Datenbank in Verbindung stehen. Die Kontaktinformationen werden mithilfe von XML angegeben und an eine C#--basierte gespeicherte Prozedur übergeben. Das zweite Dienstprogramm definiert einen benutzerdefinierten Currency-Datentyp mithilfe von C#. Dieser benutzerdefinierte Datentyp kapselt sowohl einen Betrag als auch ein Gebietsschema ein, um die richtige Wiedergabe des Betrags als Währungswert in diesem Gebietsschema zu bestimmen. Das dritte Dienstprogramm stellt eine Währungsumrechnungsfunktion bereit, die eine Instanz des benutzerdefinierten Currency-Typs zurückgibt. Wenn die AdventureWorks-Datenbank über einen Umrechnungskurs von US-Dollar (USD) in die Währung des angegebenen Gebietsschemas verfügt, gibt die Umrechnungsfunktion einen benutzerdefinierten Currency-Datentyp mit dem konvertierten Kurs und einem Gebietsschema zurück, das dem angeforderten Gebietsschema entspricht. Andernfalls wird ein benutzerdefinierter Currency-Datentyp mit dem ursprünglichen Betrag zurückgegeben, d. h. ein USD-Betrag mit dem Gebietsschema en-us. Die Dienstprogramme veranschaulichen auch, wie Sie mithilfe von Transact-SQL CLR-Methoden (Common Language Runtime) und Assemblys registrieren und die Registrierung von CLR-Methoden und Assemblys aufheben können.

ms160866.note(de-de,SQL.90).gifHinweis:
Die in diesem Beispiel verwendeten Wechselkurse sind frei erfunden und sollten nicht für tatsächliche finanzielle Transaktionen verwendet werden.

Das standardmäßige Installationsverzeichnis ist drive:\Programme\Microsoft SQL Server\90\Samples\Engine\Programmability\CLR\AdventureWorks.

Szenario

  • Ein Entwickler benötigt eine praktische Methode, unterschiedliche Geldbeträge in unterschiedlichen Währungen darzustellen, permanent zu speichern und zu ändern.
  • Ein Entwickler benötigt eine praktische Methode, um neue Kontaktinformationen für Mitarbeiter, einzelne Kunden, Geschäftskunden und Anbieter zu erstellen und diese Informationen mit anderen Informationen in Beziehung zu setzen, die in der AdventureWorks-Datenbank gespeichert sind.

Sprachen

Transact-SQL, Visual C# und Visual Basic.

Features

Das SQLCLR layer-Beispiel verwendet die folgenden Features von SQL Server 2005.

Anwendungsbereich Features

Contact

XML

Currency, ConvertCurrency

CLR UDT, benutzerdefinierte CLR-Funktion (UDF)

Voraussetzungen

Stellen Sie vor dem Ausführen des Beispiels sicher, dass die folgende Software installiert ist:

  • SQL Server 2005 oder SQL Server 2005 Express Edition (SQL Server Express). SQL Server Express erhalten Sie kostenlos auf der Website für SQL Server 2005 Express Edition Dokumentation und Beispiele.
  • Die AdventureWorks-Datenbank, die im Lieferumfang von SQL Server 2005 enthalten und auch auf der SQL Server Developer-Website verfügbar ist.
  • Die Beispiele zu SQL Server 2005-Datenbankmodul. Diese Beispiele sind in SQL Server 2005 enthalten. Sie können die aktuelle Version der Beispiele von der SQL Server Developer-Website downloaden.
  • .NET Framework SDK 2.0 oder Microsoft Visual Studio 2005. Das .NET Framework SDK ist kostenlos erhältlich. Siehe Installieren des .NET Framework SDK.

Erstellen des Beispiels

Wenn Sie die Schlüsseldateien mit starkem Namen, SampleKey.snk und UnsafeSampleKey.snk, noch nicht erstellt haben, erstellen Sie sie mithilfe der folgenden Anweisungen.

So generieren Sie eine Schlüsseldatei mit starkem Namen

  1. Öffnen Sie eine Microsoft Visual Studio 2005-Eingabeaufforderung. Klicken Sie auf Start, zeigen Sie auf Alle Programme, zeigen Sie auf Microsoft Visual Studio 2005 und anschließend auf Visual Studio Tools, und klicken Sie dann auf Visual Studio 2005-Eingabeaufforderung.

    - Oder -

    Öffnen Sie eine .NET Framework-Eingabeaufforderung. Klicken Sie auf Start, zeigen Sie auf Alle Programme und dann auf Microsoft .NET Framework SDK 2.0, und klicken Sie dann auf SDK-Eingabeaufforderung.

  2. Wechseln Sie an der Eingabeaufforderung mit dem Befehl CD vom aktuellen Verzeichnis im Eingabeaufforderungsfenster in den Ordner mit den Beispielen.

    ms160866.note(de-de,SQL.90).gifHinweis:
    Klicken Sie auf Start, zeigen Sie auf Alle Programme, Microsoft SQL Server 2005 und auf Documentation and Tutorials, und klicken Sie dann auf Samples Directory, um den Ordner zu ermitteln, in dem sich die Beispiele befinden. Wenn bei der Installation der Standardspeicherort verwendet wurde, befinden sich die Beispiele im Ordner <system_drive>:\Programme\Microsoft SQL Server\90\Samples.
  3. Führen Sie an der Eingabeaufforderung die folgenden Befehle aus, um die Schlüsseldateien zu generieren:

    sn -k SampleKey.snk

    sn -k UnsafeSampleKey.snk

    ms160866.note(de-de,SQL.90).gifWichtig:
    Weitere Informationen zum Schlüsselpaar mit starkem Namen finden Sie unter "Security Briefs: Strong Names and Security in the .NET Framework" (in Englisch) im .NET Development Center auf der MSDN-Website.

Um dieses Beispiel zu erstellen, müssen Sie die folgenden Schritte ausführen:

Beispielerstellung

  1. Kompilieren Sie das Beispiel mithilfe von Visual Studio 2005 und der bereitgestellten Visual Studio-Projektmappe oder mithilfe von Microsoft MSBuild, das im Lieferumfang von .NET Framework SDK 2.0 enthalten ist. Führen Sie an der Eingabeaufforderung einen Befehl ähnlich dem folgenden aus:

    msbuild /nologo /verbosity:quiet /property:Configuration=Debug CS\AdventureWorksCS.sln

  2. Stellen Sie sicher, dass die AdventureWorks-Datenbank installiert ist.

  3. Wenn Sie die Beispiele für SQL Server-Datenbankmodul nicht im Standardspeicherort installiert haben, ändern Sie den Pfad im CREATE ASSEMBLY-Abschnitt des Skripts in Scripts\InstallCS.sql, um auf den Speicherort zu verweisen, in dem die Beispiele installiert wurden.

  4. Wenn Sie keine Administratorrechte für die von Ihnen verwendete SQL Server-Instanz besitzen, müssen Sie sich von einem Administrator die CreateAssembly-Berechtigung erteilen lassen, um die Installation ausführen zu können.

  5. Öffnen Sie die Datei scripts\installCS.sql oder scripts\installVB.sql (je nachdem, ob Sie das Visual C#- oder das Visual Basic-Projekt kompiliert haben) in SQL Server Management Studio. Führen Sie das in der Datei enthaltene Skript aus, oder führen Sie an der Eingabeaufforderung einen ähnlichen Befehl wie den folgenden aus:

    sqlcmd -E -I -i Scripts\InstallCS.sql

    Dieses Skript führt die folgenden Aktionen aus:

    • Entfernt, falls vorhanden, alle gespeicherten Prozeduren, die definiert werden sollen.
    • Löscht die Assemblyregistrierung, falls diese bereits vorhanden ist.
    • Registriert die Assembly.
    • Registriert die gespeicherten CLR-Prozeduren.

Ausführen des Beispiels

Um dieses Beispiel auszuführen, müssen Sie die folgenden Schritte ausführen:

Beispielausführung

  1. Laden Sie die Datei Scripts\test.sql in Management Studio, und führen Sie sie aus. Oder führen Sie den folgenden Befehl an der Eingabeaufforderung aus:

    sqlcmd -E -I -i Scripts\test.sql

Entfernen des Beispiels

Mithilfe des folgenden Verfahrens können Sie das SQLCLR Layer-Beispiel entfernen.

Beispielentfernung

  1. Laden Sie die Datei Scripts\cleanup.sql in Management Studio, und führen Sie sie aus. Oder führen Sie den folgenden Befehl an der Eingabeaufforderung aus:

    sqlcmd -E -I -i Scripts\cleanup.sql

Kommentar

CLR für SQL Server 2005 oder SQL Server 2005 Express Edition muss aktiviert sein, damit dieses Beispiel ordnungsgemäß ausgeführt werden kann.

Die Beispiele dienen nur zu Lernzwecken. Sie sind nicht für den Einsatz in einer Produktionsumgebung gedacht und wurden auch nicht in einer Produktionsumgebung getestet. Microsoft leistet keinen technischen Support für diese Beispiele. Beispielanwendungen und Assemblys sollten nicht ohne die Zustimmung des Systemadministrators mit der SQL Server-Datenbank oder dem Berichtsserver verbunden sein oder verwendet werden.

Siehe auch

Aufgaben

Readme_Storefront

Konzepte

Beispiele für die CLR-Programmierbarkeit

Hilfe und Informationen

Informationsquellen für SQL Server 2005

Änderungsverlauf

Version Verlauf

05. Dezember 2005

Geänderter Inhalt:
  • Die Anweisungen zum Generieren einer Schlüsseldatei wurden geändert, einschließlich des Namens und Speicherortes der Schlüsseldatei.