sql >> Base de Datos >  >> RDS >> SQLite

Actualización de SQLite

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 UPDATE cláusula.
  • Segundo, establezca un nuevo valor para cada columna de la tabla en SET cláusula.
  • Tercero, especifique filas para actualizar usando una condición en WHERE cláusula. El WHERE cláusula es opcional. Si lo omite, el UPDATE declaración actualizará los datos en todas las filas de la tabla.
  • Finalmente, use el ORDER BY y LIMIT cláusulas en UPDATE declaració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