Resumen :en este tutorial, aprenderá a usar SQLite UPDATE instrucción para actualizar los datos de las filas existentes en la tabla.
Introducción a SQLite UPDATE declaración
Para actualizar los datos existentes en una tabla, usa SQLite UPDATE declaración. Lo siguiente ilustra la sintaxis de UPDATE declaración:
UPDATE table
SET column_1 = new_value_1,
column_2 = new_value_2
WHERE
search_condition
ORDER column_or_expression
LIMIT row_count OFFSET offset;Code language: SQL (Structured Query Language) (sql) En esta sintaxis:
- Primero, especifique la tabla donde desea actualizar después de
UPDATEcláusula. - Segundo, establezca un nuevo valor para cada columna de la tabla en
SETcláusula. - Tercero, especifique filas para actualizar usando una condición en
WHEREcláusula. ElWHEREcláusula es opcional. Si lo omite, elUPDATEdeclaración actualizará los datos en todas las filas de la tabla. - Finalmente, use el
ORDER BYyLIMITcláusulas enUPDATEdeclaración para especificar el número de filas para actualizar.
Tenga en cuenta que si usa un valor negativo en el LIMIT cláusula, SQLite asume que no hay límite y actualiza todas las filas que cumplen la condición en el WHERE anterior cláusula.
El ORDER BY La cláusula siempre debe ir con LIMIT cláusula para especificar exactamente qué filas se actualizarán. De lo contrario, nunca sabrá qué fila se actualizará realmente; porque sin el ORDER BY cláusula, no se especifica el orden de las filas en la tabla.
SQLite UPDATE ejemplos de declaraciones
Usaremos los employees tabla en la base de datos de ejemplo para demostrar la UPDATE declaración.
El siguiente SELECT declaración obtiene datos parciales de los employees tabla:
SELECT
employeeid,
firstname,
lastname,
title,
email
FROM
employees;Code language: SQL (Structured Query Language) (sql) Pruébalo
1) Ejemplo de actualización de una columna
Supongamos que Jane se casó y quería cambiar su apellido por el apellido de su esposo, es decir, Smith . En este caso, puede actualizar el apellido de Jane usando la siguiente declaración:
UPDATE employees
SET lastname = 'Smith'
WHERE employeeid = 3;Code language: SQL (Structured Query Language) (sql) Pruébalo
La expresión en WHERE La cláusula se asegura de que solo actualicemos el registro de Jane. Establecemos el lastname columna a una cadena literal 'Smith' .
Para verificar la UPDATE , utiliza la siguiente declaración:
SELECT
employeeid,
firstname,
lastname,
title,
email
FROM
employees
WHERE
employeeid = 3;Code language: SQL (Structured Query Language) (sql) Pruébalo
2) Ejemplo de actualización de varias columnas
Supongamos que Park Margaret localiza en Toronto y desea cambiar la información de su dirección, ciudad y estado. Puedes usar el UPDATE instrucción para actualizar varias columnas de la siguiente manera:
UPDATE employees
SET city = 'Toronto',
state = 'ON',
postalcode = 'M5P 2N7'
WHERE
employeeid = 4;Code language: SQL (Structured Query Language) (sql) Pruébalo
Para verificar la UPDATE , utiliza la siguiente declaración:
SELECT
employeeid,
firstname,
lastname,
state,
city,
PostalCode
FROM
employees
WHERE
employeeid = 4;Code language: SQL (Structured Query Language) (sql) Pruébalo
3) Actualizar con ORDER BY y LIMIT ejemplo de cláusulas
Tenga en cuenta que necesita compilar SQLite con la opción SQLITE_ENABLE_UPDATE_DELETE_LIMIT para realizar UPDATE declaración con ORDER BY opcional y LIMIT cláusulas.
Revisemos las direcciones de correo electrónico de los empleados en el employees tabla:
SELECT
employeeid,
firstname,
lastname,
email
FROM
employees;Code language: SQL (Structured Query Language) (sql) Pruébalo
Para actualizar una fila en los employees tabla, usas LIMIT 1 cláusula. Para asegurarse de actualizar la primera fila de empleados ordenados por nombre, agregue ORDER BY firstname cláusula.
Entonces, la siguiente declaración actualiza el correo electrónico de Andrew Adams :
UPDATE employees
SET email = LOWER(
firstname || "." || lastname || "@chinookcorp.com"
)
ORDER BY
firstname
LIMIT 1;Code language: SQL (Structured Query Language) (sql) Pruébalo
El nuevo correo electrónico es la combinación del nombre, el punto (.), el apellido y el sufijo @chinookcorp.com
El LOWER() La función convierte el correo electrónico a minúsculas.
4) Ejemplo de actualización de todas las filas
Para actualizar todas las filas en los employees tabla, se salta el WHERE cláusula. Por ejemplo, el siguiente UPDATE declaración cambia todas las direcciones de correo electrónico de todos los empleados a minúsculas:
UPDATE employees
SET email = LOWER(
firstname || "." || lastname || "@chinookcorp.com"
);Code language: SQL (Structured Query Language) (sql) Pruébalo
En este tutorial, ha aprendido a usar SQLite UPDATE instrucción para actualizar los datos existentes en una tabla.
Referencias
- https://www.sqlite.org/lang_update.html:declaración de actualización de SQLite