Freigeben über


Exemplarische Vorgehensweise: Erstellen von aktualisierten gespeicherten Prozeduren für die Northwind-Kundentabelle

Einige Hilfethemen in der Dokumentation Visual Studio erfordern zusätzliche gespeicherte Prozeduren in der Beispieldatenbank Northwind für das Ausführen von Aktualisierungen (Einfügungen, Aktualisierungen und Löschvorgänge), der Daten in der Tabelle Customer.

Diese exemplarische Vorgehensweise enthält Anweisungen zum Erstellen dieser zusätzlichen gespeicherten Prozeduren in der Beispieldatenbank Northwinden für SQL Serverbereit.

Der Abschnitt " Nächste Schritte weiter unten in diesem Thema stellt Links zu Themen, die veranschaulichen, wie mit dieser zusätzlichen gespeicherten Prozeduren funktioniert.

In dieser exemplarischen Vorgehensweise wird gezeigt, wie Sie die folgenden Aufgaben ausführen:

  • Erstellen Sie eine Datenverbindung zur Beispieldatenbank Northwind.

  • Erstellen Sie die gespeicherten Prozeduren.

Vorbereitungsmaßnahmen

Um diese exemplarische Vorgehensweise nachzuvollziehen, benötigen Sie Folgendes:

Verbinden mit der Datenbank Northwind

Diese exemplarische Vorgehensweise erfordert eine Verbindung mit der SQL Server-Version der Northwind-Datenbank.Die folgende Vorgehensweise enthält Anweisungen zum Erstellen der Datenverbindung zur Verfügung.

HinweisHinweis

Wenn Sie bereits über eine Datenverbindung zur Datenbank Northwind haben, können Sie zum nächsten Abschnitt übergehen und die gespeicherten Prozeduren erstellen.

So erstellen Sie eine Datenverbindung zur SQL Server-Datenbank Northwind

  1. Klicken Sie im Menü Ansicht auf Server-Explorer/Datenbank-Explorer.

  2. Klicken Sie mit der rechten Maustaste auf Datenverbindungen , und klicken Sie auf Verbindung hinzufügen.

  3. Klicken Sie im Dialogfeld Datenquelle auswählen auf Microsoft SQL Server, und klicken Sie dann auf OK.

    Wenn das Dialogfeld Verbindung hinzufügen geöffnet wird und als Datenquelle nicht Microsoft SQL Server (SqlClient) angezeigt wird, klicken Sie auf Ändern, um das Dialogfeld Datenquelle auswählen/wechseln zu öffnen. Klicken Sie auf Microsoft SQL Server und anschließend auf OK.Weitere Informationen finden Sie unter Dialogfeld "Datenquelle auswählen/wechseln".

  4. Klicken Sie in der Dropdownliste auf einen Servernamen, oder geben Sie den Namen des Servers ein, auf dem sich die Datenbank Northwind befindet.

  5. Je nach den Anforderungen der Datenbank oder der Anwendung, klicken Sie auf Windows-Authentifizierung verwenden oder verwenden Sie einen bestimmten Benutzernamen und ein Kennwort verwenden, um sich am Computer mit SQL Server (SQL Server-Authentifizierung) anzumelden.Weitere Informationen finden Sie unter Verbindung hinzufügen/ändern (Microsoft SQL Server).

  6. Klicken Sie in der Liste Wählen Sie einen Datenbanknamen aus, oder geben Sie ihn ein auf die Datenbank Northwind.

  7. Klicken Sie auf OK.

    Die Datenverbindung wird dem Server-Explorer/Datenbank-Explorer hinzugefügt.

Erstellen der gespeicherten Prozeduren

Erstellen Sie die gespeicherten Prozeduren, indem Sie das bereitgestellte SQL-Skript für die Datenbank Northwind ausführen, indem Sie Visual Database Tools verwenden, das in Server-Explorer/Datenbank-Explorerverfügbar ist.

So erstellen Sie die gespeicherten Prozeduren mithilfe eines SQL-Skripts

  1. Erweitern Sie im Server-Explorer/Datenbank-Explorer die Datenbank Northwind.

  2. Gespeicherte Prozeduren der rechten Maustaste auf den Knoten, und klicken Sie auf Neue gespeicherte Prozedur hinzufügen.

  3. Fügen Sie den folgenden Code in den Code-Editor ein und CREATE PROCEDURE Vorlage ersetzen:

    IF EXISTS (SELECT * FROM sysobjects WHERE name = 'SelectCustomers' AND user_name(uid) = 'dbo')
        DROP PROCEDURE dbo.[SelectCustomers]
    GO
    
    CREATE PROCEDURE dbo.[SelectCustomers]
    AS
        SET NOCOUNT ON;
    SELECT CustomerID, CompanyName, ContactName, ContactTitle, Address, City, Region, PostalCode, Country, Phone, Fax FROM dbo.Customers
    GO
    
    IF EXISTS (SELECT * FROM sysobjects WHERE name = 'InsertCustomers' AND user_name(uid) = 'dbo')
        DROP PROCEDURE dbo.InsertCustomers
    GO
    
    CREATE PROCEDURE dbo.InsertCustomers
    (
        @CustomerID nchar(5),
        @CompanyName nvarchar(40),
        @ContactName nvarchar(30),
        @ContactTitle nvarchar(30),
        @Address nvarchar(60),
        @City nvarchar(15),
        @Region nvarchar(15),
        @PostalCode nvarchar(10),
        @Country nvarchar(15),
        @Phone nvarchar(24),
        @Fax nvarchar(24)
    )
    AS
        SET NOCOUNT OFF;
    INSERT INTO [dbo].[Customers] ([CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address], [City], [Region], [PostalCode], [Country], [Phone], [Fax]) VALUES (@CustomerID, @CompanyName, @ContactName, @ContactTitle, @Address, @City, @Region, @PostalCode, @Country, @Phone, @Fax);
    
    SELECT CustomerID, CompanyName, ContactName, ContactTitle, Address, City, Region, PostalCode, Country, Phone, Fax FROM Customers WHERE (CustomerID = @CustomerID)
    GO
    
    IF EXISTS (SELECT * FROM sysobjects WHERE name = 'UpdateCustomers' AND user_name(uid) = 'dbo')
        DROP PROCEDURE dbo.UpdateCustomers
    GO
    
    CREATE PROCEDURE dbo.UpdateCustomers
    (
        @CustomerID nchar(5),
        @CompanyName nvarchar(40),
        @ContactName nvarchar(30),
        @ContactTitle nvarchar(30),
        @Address nvarchar(60),
        @City nvarchar(15),
        @Region nvarchar(15),
        @PostalCode nvarchar(10),
        @Country nvarchar(15),
        @Phone nvarchar(24),
        @Fax nvarchar(24),
        @Original_CustomerID nchar(5)
    )
    AS
        SET NOCOUNT OFF;
    UPDATE [dbo].[Customers] SET [CustomerID] = @CustomerID, [CompanyName] = @CompanyName, [ContactName] = @ContactName, [ContactTitle] = @ContactTitle, [Address] = @Address, [City] = @City, [Region] = @Region, [PostalCode] = @PostalCode, [Country] = @Country, [Phone] = @Phone, [Fax] = @Fax WHERE (([CustomerID] = @Original_CustomerID));
    
    SELECT CustomerID, CompanyName, ContactName, ContactTitle, Address, City, Region, PostalCode, Country, Phone, Fax FROM Customers WHERE (CustomerID = @CustomerID)
    GO
    
    IF EXISTS (SELECT * FROM sysobjects WHERE name = 'DeleteCustomers' AND user_name(uid) = 'dbo')
        DROP PROCEDURE dbo.DeleteCustomers
    GO
    
    CREATE PROCEDURE dbo.DeleteCustomers
    (
        @Original_CustomerID nchar(5)
    )
    AS
        SET NOCOUNT OFF;
    DELETE FROM [dbo].[Customers] WHERE (([CustomerID] = @Original_CustomerID))
    GO
    
  4. Markieren Sie den gesamten Text im Code-Editor mit der rechten Maustaste auf den markierten Text, und klicken Sie auf Auswahl ausführenaus.

    Die gespeicherten Prozeduren SelectCustomers, InsertCustomers, UpdateCustomers und DeleteCustomers werden für die Datenbank Northwind erstellt.

Nächste Schritte

Nachdem Sie die gespeicherten Prozeduren erstellt haben, führen Sie die folgenden exemplarischen Vorgehensweisen, die veranschaulichen, wie mit ihnen arbeiten:

How to: Assign Stored Procedures to Perform Updates, Inserts, and Deletes

Walkthrough: Creating LINQ to SQL Classes with the O/R Designer

Walkthrough: Customizing the Insert, Update, and Delete Behavior of Entity Classes

Siehe auch

Weitere Ressourcen

Object Relational Designer (O/R Designer)

LINQ to SQL

Zugreifen auf Daten in Visual Studio