Gegevens bijwerken

Voltooid

De INSTRUCTIE UPDATE in T-SQL wordt gebruikt om bestaande gegevens in een tabel te wijzigen. UPDATE werkt op een set rijen, gedefinieerd door een voorwaarde in een WHERE-component of gedefinieerd in een join. De UPDATE-instructie heeft een SET-component die aangeeft welke kolommen moeten worden gewijzigd. De SET-component een of meer kolommen, gescheiden door komma's en levert nieuwe waarden aan die kolommen. De WHERE-component in een UPDATE-instructie heeft dezelfde structuur als een WHERE-component in een SELECT-instructie.

Notitie

Het is belangrijk om te weten dat een UPDATE zonder een bijbehorende WHERE-component of join alle rijen in een tabel bijwerkt. Gebruik de UPDATE-instructie met voorzichtigheid.

De basissyntaxis van een UPDATE-instructie wordt hieronder weergegeven.

UPDATE <TableName>
SET 
<ColumnName> = { expression | DEFAULT | NULL }
{,…n}
WHERE <search_conditions>;

In het volgende voorbeeld ziet u de UPDATE-instructie die wordt gebruikt om de notities voor een promotie te wijzigen:

UPDATE Sales.Promotion
SET Notes = '25% off socks'
WHERE PromotionID = 2;

U kunt meerdere kolommen in de SET-component wijzigen. Met de volgende UPDATE-instructie zijn bijvoorbeeld zowel de velden Korting als Notities gewijzigd voor alle rijen waarin de promotienaam 'Get Framed' is:

UPDATE Sales.Promotion
SET Discount = 0.2, Notes = REPLACE(Notes, '10%', '20%')
WHERE PromotionName = 'Get Framed';

De UPDATE-instructie ondersteunt ook een FROM-component, zodat u gegevens kunt wijzigen op basis van de resultaten van een query. Met de volgende code wordt bijvoorbeeld de tabel Sales.Promotion bijgewerkt met behulp van waarden die zijn opgehaald uit de tabel Product.ProductModel .

UPDATE Sales.Promotion
SET Notes = FORMAT(Discount, 'P') + ' off ' + m.Name
FROM Product.ProductModel AS m
WHERE Notes IS NULL
    AND Sales.Promotion.ProductModelID = m.ProductModelID;