Instrucción UPDATE (Microsoft Access SQL)
Se aplica a: Access 2013, Office 2013
Crea una consulta de actualización que cambia los valores de los campos de una tabla especificada a partir de los criterios especificados.
Sintaxis
UPDATE tabla SET valor nuevo WHERE criterios;
La instrucción UPDATE consta de las siguientes partes:
Part |
Descripción |
---|---|
table |
El nombre de la tabla que contiene los datos que quiere modificar. |
nuevoValor |
Expresión que determina el valor que se debe insertar en un campo determinado en los registros actualizados. |
criterios |
Una expresión que determina los registros que se actualizarán. Solo se actualizarán los registros que cumplan la expresión. |
Comentarios
UPDATE es especialmente útil cuando quiere modificar muchos registros o cuando los registros que quiere modificar están en varias tablas.
Puede cambiar varios campos a la vez. En el ejemplo siguiente, los valores de Importe del pedido (Order Amount) se aumentan un 10 % y los valores de Flete (Freight) se incrementan un 3 % para los remitentes que están en el Reino Unido:
UPDATE Orders
SET OrderAmount = OrderAmount * 1.1,
Freight = Freight * 1.03
WHERE ShipCountry = 'UK';
Importante
- UPDATE no genera un conjunto de resultados. Además, después de actualizar registros con una consulta de actualización, no se puede deshacer la operación. Si quiere saber qué registros se actualizaron, en primer lugar, examine los resultados de una consulta de selección que use los mismos criterios y, luego, ejecute la consulta de actualización.
- Mantenga copias de seguridad de los datos en todo momento. Si actualiza los registros incorrectos, podrá recuperarlos de las copias de seguridad.
Ejemplo
En este ejemplo, se cambian los valores del campo ReportsTo a 5 en todos los registros de empleados que tengan actualmente valores de 2 en el campo ReportsTo.
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