Ändern von Daten über eine Sicht
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Sie können die Daten einer zugrunde liegenden Basistabelle in SQL Server mithilfe von SQL Server Management Studio oder Transact-SQL ändern.
Vorbereitungen
Einschränkungen
- Weitere Informationen finden Sie im Abschnitt „Aktualisierbare Sichten“ in CREATE VIEW (Transact-SQL).
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
Erweitern Sie in Objekt-Explorerdie Datenbank, die die Sicht enthält, und erweitern Sie dann Sichten.
Klicken Sie mit der rechten Maustaste auf die Sicht, und wählen Sie Die ersten 200 Zeilen bearbeitenaus.
Sie müssen möglicherweise die SELECT-Anweisung im Bereich SQL ändern, um die Zeilen zurückzugeben, die geändert werden sollen.
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.
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
Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-Engine-Instanz her.
Klicken Sie in der Standardleiste auf Neue Abfrage.
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
undEndDate
für einen bestimmten Mitarbeiter geändert, indem in der SichtHumanResources.vEmployeeDepartmentHistory
auf 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 AdventureWorks2022; 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
Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-Engine-Instanz her.
Klicken Sie in der Standardleiste auf Neue Abfrage.
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 SichtHumanResources.vEmployeeDepartmentHistory
angegeben werden. Die Anweisung ist erfolgreich, da nur Spalten von einer einzelnen Basistabelle angegeben werden. In den anderen Spalten der Basistabelle befinden sich Standardwerte.USE AdventureWorks2022; GO INSERT INTO HumanResources.vEmployeeDepartmentHistory (Department, GroupName) VALUES ('MyDepartment', 'MyGroup'); GO
Weitere Informationen finden Sie unter INSERT (Transact-SQL).