Ändra data via en vy
gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Du kan ändra data för en underliggande bastabell i SQL Server med hjälp av SQL Server Management Studio eller Transact-SQL.
Innan du börjar
Begränsningar och restriktioner
- Se avsnittet "Updatable Views" i CREATE VIEW (Transact-SQL).
Behörigheter
Kräver uppdaterings-, INSERT- eller DELETE-behörigheter i måltabellen, beroende på vilken åtgärd som utförs.
Använda SQL Server Management Studio
Så här ändrar du tabelldata via en vy
I Object Explorerexpanderar du databasen som innehåller vyn och expanderar sedan Vyer.
Högerklicka på vyn och välj Redigera de 200 översta raderna.
Du kan behöva ändra SELECT-instruktionen i fönstret SQL för att returnera raderna som ska ändras.
Leta upp den rad som ska ändras eller tas bort i fönstret Resultat. Om du vill ta bort raden högerklickar du på raden och väljer Ta bort. Ändra data i kolumnen om du vill ändra data i en eller flera kolumner.
Viktig
Det går inte att ta bort en rad om vyn hänvisar till mer än en bastabell. Du kan bara uppdatera kolumner som tillhör en enda bastabell.
Om du vill infoga en rad rullar du ned till slutet av raderna och infogar de nya värdena.
Viktig
Du kan inte infoga en rad om vyn refererar till mer än en bastabell.
Använda Transact-SQL
Så här uppdaterar du tabelldata via en vy
I Object Exploreransluter du till en instans av databasmotorn.
I fältet Standard klickar du på Ny fråga.
Kopiera och klistra in följande exempel i frågefönstret och klicka på Kör. I det här exemplet ändras värdet i kolumnerna
StartDate
ochEndDate
för en viss medarbetare genom att referera till kolumner i vynHumanResources.vEmployeeDepartmentHistory
. Den här vyn returnerar värden från två tabeller. Den här instruktionen lyckas eftersom kolumnerna som ändras bara kommer från en av bastabellerna.USE AdventureWorks2022; GO UPDATE HumanResources.vEmployeeDepartmentHistory SET StartDate = '20110203', EndDate = GETDATE() WHERE LastName = N'Smith' AND FirstName = 'Samantha'; GO
Mer information finns i UPDATE (Transact-SQL).
Infoga tabelluppgifter genom en vy
I Object Exploreransluter du till en instans av databasmotorn.
I fältet Standard klickar du på Ny fråga.
Kopiera och klistra in följande exempel i frågefönstret och klicka på Kör. Exemplet infogar en ny rad i bastabellen
HumanResources.Department
genom att ange relevanta kolumner från vynHumanResources.vEmployeeDepartmentHistory
. Instruktionen lyckas eftersom endast kolumner från en enda bastabell anges och de andra kolumnerna i bastabellen har standardvärden.USE AdventureWorks2022; GO INSERT INTO HumanResources.vEmployeeDepartmentHistory (Department, GroupName) VALUES ('MyDepartment', 'MyGroup'); GO
Mer information finns i INSERT (Transact-SQL).