Ändern von Daten über eine Sicht

Gilt für:yes SQL Server (alle unterstützten Versionen) YesAzure SQL-Datenbank YesAzure SQL verwaltete Instanz yesAzure Synapse Analytics yesAnalytics Platform System (PDW)

Sie können die Daten einer zugrunde liegenden Basistabelle in SQL Server ändern, indem Sie SQL Server Management Studio oder Transact-SQL verwenden.

Vorbereitungen

Einschränkungen

Berechtigungen

Erfordert je nach ausgeführter Aktion Berechtigungen für UPDATE, INSERT oder DELETE in der Zieltabelle.

Verwendung von SQL Server Management Studio

So ändern Sie Tabellendaten durch eine Sicht

  1. Erweitern Sie in Objekt-Explorerdie Datenbank, die die Sicht enthält, und erweitern Sie dann Sichten.

  2. Klicken Sie mit der rechten Maustaste auf die Sicht, und wählen Sie Die ersten 200 Zeilen bearbeitenaus.

  3. Sie müssen möglicherweise die SELECT-Anweisung im Bereich SQL ändern, um die Zeilen zurückzugeben, die geändert werden sollen.

  4. Suchen Sie im Bereich Ergebnisse die zu ändernde oder zu löschende Zeile. Klicken Sie mit der rechten Maustaste auf die zu löschende Zeile, und wählen Sie Löschenaus. Zum Ändern von Daten in mindestens einer Spalte ändern Sie die Daten in der Spalte.

    WICHTIG! Sie können keine Zeile löschen, wenn die Sicht auf mehr als eine Basistabelle verweist. Sie können nur Spalten aktualisieren, die zu einer einzelnen Basistabelle gehören.

  5. Zum Einfügen einer Zeile führen Sie einen Bildlauf nach unten zum Ende der Zeilen durch, und fügen Sie die neuen Werte ein.

    WICHTIG! Sie können keine Zeile einfügen, wenn die Sicht auf mehr als eine Basistabelle verweist.

Verwenden von Transact-SQL

So aktualisieren Sie Tabellendaten durch eine Sicht

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Instanz der Datenbank-Engine her.

  2. Klicken Sie in der Standardleiste auf Neue Abfrage.

  3. Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen. In diesem Beispiel wird der Wert in den Spalten StartDate und EndDate für einen bestimmten Mitarbeiter geändert, indem in der Sicht HumanResources.vEmployeeDepartmentHistoryauf Spalten verwiesen wird. Diese Sicht gibt Werte von zwei Tabellen zurück. Diese Anweisung ist erfolgreich, da die geänderten Spalten aus nur einer der Basistabellen stammen.

    USE AdventureWorks2012 ;   
    GO  
    UPDATE HumanResources.vEmployeeDepartmentHistory  
    SET StartDate = '20110203', EndDate = GETDATE()   
    WHERE LastName = N'Smith' AND FirstName = 'Samantha';   
    GO  
    

Weitere Informationen finden Sie unter UPDATE (Transact-SQL).

So fügen Sie Tabellendaten durch eine Sicht ein

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Instanz der Datenbank-Engine her.

  2. Klicken Sie in der Standardleiste auf Neue Abfrage.

  3. Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen. Im Beispiel wird eine neue Zeile in die Basistabelle HumanResouces.Department eingefügt, indem die relevanten Spalten der Sicht HumanResources.vEmployeeDepartmentHistoryangegeben werden. Die Anweisung ist erfolgreich, da nur Spalten von einer einzelnen Basistabelle angegeben werden. In den anderen Spalten der Basistabelle befinden sich Standardwerte.

    USE AdventureWorks2012 ;  
    GO  
    INSERT INTO HumanResources.vEmployeeDepartmentHistory (Department, GroupName)   
    VALUES ('MyDepartment', 'MyGroup');   
    GO  
    

Weitere Informationen finden Sie unter INSERT (Transact-SQL).