Description
Creates an update query that changes values in fields in a specified table based on specified criteria.
Syntax UPDATE tablePart | Description |
table | The name of the table containing the data you want to modify. |
newvalue | An expression that determines the value to be inserted into a particular field in the updated records. |
criteria | An expression that determines which records will be updated. Only records that satisfy the expression are updated. |
Remarks UPDATE is especially useful when you want to change many records or when the records that you want to change are in multiple tables.
You can change several fields at the same time. The following example increases the Order Amount values by 10 percent and the Freight values by 3 percent for shippers in the United Kingdom:UPDATE Orders
SET OrderAmount = OrderAmount * 1.1,
Freight = Freight * 1.03
WHERE ShipCountry = 'UK';
Important
Sub UpdateX()
Dim dbs As Database
Dim qdf As QueryDef
' Modify this line to include the path to Northwind
' on your computer.
Set dbs = OpenDatabase("Northwind.mdb")
' Change values in the ReportsTo field to 5 for all
' employee records that currently have ReportsTo
' values of 2.
dbs.Execute "UPDATE Employees " _
& "SET ReportsTo = 5 " _
& "WHERE ReportsTo = 2;"
dbs.Close
End Sub
Example (Microsoft Access)
To try the following examples in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.
UPDATE Employees SET ReportsTo = 5 WHERE ReportsTo = 2;
The next example increases the UnitPrice for all non-discontinued products from supplier #8 by 10 percent:
UPDATE Products SET UnitPrice = UnitPrice * 1.1
WHERE SupplierID = 8 AND Discontinued = No;
The following example reduces the UnitPrice for all non-discontinued products supplied by Tokyo Traders by 5 percent. The Products and Suppliers tables have a many-to-one relationship.
UPDATE Suppliers INNER JOIN Products
ON Suppliers.SupplierID = Products.SupplierID
SET UnitPrice = UnitPrice * .95
WHERE CompanyName = 'Tokyo Traders' AND Discontinued = No;