Share via


Array Parameter-Beispiel

Aktualisiert: 14. April 2006

In bestimmten Situationen ist es hilfreich, eine Zeilenmenge zu erstellen, zu aktualisieren oder zu löschen. Für die Durchführung dieser Aufgabe gibt es mehrere Ansätze. Einer diese Ansätze besteht darin, ein Array mit Informationen mithilfe eines benutzerdefinierten Datentyps der CLR-Integration (Common Language Runtime) von einem Client an eine gespeicherte Prozedur der CLR-Integration auf dem Server zu übergeben. Aufgrund der Eigenschaften dieser benutzerdefinierten Datentypen ist die für den Server bereitgestellte Datenmenge auf 8000 Bytes begrenzt. Aus diesem Grund eignet sich dieser Ansatz nicht für große oder komplexe Datenmengen. Weitere Informationen finden Sie in der Beschreibung der gespeicherten Prozedur zum Erstellen von Kontakten im AdventureWorks Cycles CLR Layer-Beispiel. Wenn die bearbeitete Datenmenge klein und übersichtlich ist, kann dieser Ansatz deutlich effizienter sein als das Aufrufen einer gespeicherten Prozedur pro Zeile. Durch Übergeben eines Arrays wird die Reihenfolge der Daten für Anwendungen beibehalten, wo die Reihenfolge wichtig ist.

Dieses Beispiel enthält Folgendes:

  1. Den benutzerdefinierten Datentyp ContactTypeNames. Er enthält eine Liste mit gewünschten Kontakttypnamen.
  2. Die gespeicherte Prozedur usp_EnsureContactTypeNames, als Microsoft Visual C#- oder Microsoft Visual Basic-Methode implementiert. Sie nimmt eine Instanz des benutzerdefinierten Datentyps ContactTypeNames an und fügt neue Zeilen in die Person.ContactType-Tabelle für alle Kontaktnamen ein, die in der benutzerdefinierten Datentypinstanz enthalten und noch nicht in der Tabelle vorhanden sind.
  3. Die Konsolenanwendung TestArrayParameter. Sie erstellt basierend auf den übergebenen Befehlszeilenparametern eine Instanz des benutzerdefinierten Datentyps ContactTypeNames und ruft dann die gespeicherte Prozedur usp_EnsureContactTypeNames durch Übergeben der benutzerdefinierten Datentypinstanz als Parameter auf.

Installationsverzeichnis: drive:\Programme\Microsoft SQL Server\90\Samples\Engine\Programmability\CLR\ArrayParameter\

Szenario

Jane ist eine Entwicklerin für Adventure Works Cycles. Sie muss einige einfache Zeilen in eine Tabelle einfügen, möchte aber den Datenverarbeitungsaufwand minimieren.

Sprachen

Transact-SQL, Visual C# und Visual Basic.

Features

Das Array Parameter-Beispiel verwendet die folgenden Features von Microsoft .

Anwendungsbereich Features

Gesamt

CLR, benutzerdefinierter Datentyp, Transact-SQL

Voraussetzungen

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

  • Microsoft SQL Server 2005 oder Microsoft SQL Server 2005 Express Edition (SQL Server Express). Sie können SQL Server Express kostenlos von der Website mit der Dokumentation und Beispielen zu SQL Server 2005 Express Edition abrufen.
  • 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

Generieren Sie die Schlüsseldatei mithilfe der folgenden Anweisungen, falls Sie noch keine Schlüsseldatei mit starkem Namen erstellt haben.

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 und danach auf Microsoft .NET Framework SDK 2.0, und klicken Sie anschließend auf SDK-Eingabeaufforderung.

    – oder –

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

  2. Wechseln Sie an der Eingabeaufforderung mit dem Befehl CD (Verzeichnis wechseln) im Eingabeaufforderungsfenster vom aktuellen Verzeichnis zu dem Ordner, in dem die Beispiele installiert sind.

    ms160951.note(de-de,SQL.90).gifHinweis:
    Klicken Sie auf Start, zeigen Sie auf Alle Programme, Microsoft SQL Server und auf Dokumentation und Lernprogramme, und klicken Sie dann auf Beispielordner, um den Ordner zu ermitteln, in dem sich die Beispiele befinden. Wenn das Standardverzeichnis verwendet wurde, befinden sich die Beispiele im Verzeichnis <Systemlaufwerk>:\Programme\Microsoft SQL Server\100\Samples.
  3. Führen Sie an der Eingabeaufforderung den folgenden Befehl zum Generieren der Schlüsseldatei aus:

    sn -k SampleKey.snk

    ms160951.note(de-de,SQL.90).gifWichtig:
    Weitere Informationen zum Schlüsselpaar mit starkem Namen finden Sie unter "Security Briefs: Starke Namen und Sicherheit im .NET Framework" unter ".NET-Entwicklung" auf der MSDN-Website.

So erstellen Sie das Array Parameter-Beispiel

  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 einer .NET Framework-Eingabeaufforderung Befehle aus, die den folgenden ähneln:

    msbuild /nologo /verbosity:quiet /property:Configuration=Debug CS\ArrayParameter.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 bzw. scripts\installVB.sql (je nachdem, ob Sie das Visual C#-Projekt 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 in einem Eingabeaufforderungsfenster einen Befehl aus, der dem folgenden ähnlich ist:

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

Ausführen des Beispiels

So führen Sie das Array Parameter-Beispiel aus

  1. Wechseln Sie an der Eingabeaufforderung mit dem Befehl CD (Verzeichnis wechseln) vom aktuellen Ordner im Eingabeaufforderungsfenster zum Verzeichnis des ArrayParameter-Beispiels. Führen Sie an der Eingabeaufforderung den folgenden Befehl aus:

    Scripts\TestCS.cmd

Entfernen des Beispiels

So entfernen Sie das Array Parameter-Beispiel

  1. Öffnen Sie die Datei scripts\cleanup.sql in Management Studio. Führen Sie das in der Datei enthaltene Skript aus, oder führen Sie den folgenden Befehl in einem Eingabeaufforderungsfenster aus:

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

Kommentar

CLR (Common Language Runtime) für SQL Server 2005 oder SQL Server Express muss aktiviert sein, damit dieses Beispiel ordnungsgemäß ausgeführt wird.

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

AdventureWorks Cycles CLR Layer

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.