Résumé :dans ce tutoriel, vous apprendrez à utiliser SQLite UPDATE
pour mettre à jour les données des lignes existantes dans la table.
Introduction à SQLite UPDATE
déclaration
Pour mettre à jour les données existantes dans une table, vous utilisez SQLite UPDATE
déclaration. Ce qui suit illustre la syntaxe de UPDATE
déclaration :
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)
Dans cette syntaxe :
- Tout d'abord, spécifiez la table où vous souhaitez mettre à jour après le
UPDATE
clause. - Deuxièmement, définissez une nouvelle valeur pour chaque colonne de la table dans le
SET
clause. - Troisièmement, spécifiez les lignes à mettre à jour à l'aide d'une condition dans
WHERE
clause. LeWHERE
clause est facultative. Si vous l'ignorez, leUPDATE
l'instruction mettra à jour les données dans toutes les lignes du tableau. - Enfin, utilisez le
ORDER BY
etLIMIT
clauses dans leUPDATE
pour spécifier le nombre de lignes à mettre à jour.
Notez que si vous utilisez une valeur négative dans le LIMIT
clause, SQLite suppose qu'il n'y a pas de limite et met à jour toutes les lignes qui remplissent la condition dans le WHERE
précédent clause.
Le ORDER BY
la clause doit toujours aller avec le LIMIT
clause pour spécifier exactement les lignes à mettre à jour. Sinon, vous ne saurez jamais quelle ligne sera réellement mise à jour ; car sans le ORDER BY
clause, l'ordre des lignes dans la table n'est pas spécifié.
SQLite UPDATE
exemples d'énoncés
Nous utiliserons les employees
table dans l'exemple de base de données pour illustrer la UPDATE
déclaration.
Le SELECT
suivant l'instruction obtient des données partielles des employees
tableau :
SELECT
employeeid,
firstname,
lastname,
title,
email
FROM
employees;
Code language: SQL (Structured Query Language) (sql)
Essayez-le
1) Exemple de mise à jour d'une colonne
Supposons que Jane se soit mariée et qu'elle veuille changer son nom de famille pour le nom de famille de son mari, c'est-à-dire Smith
. Dans ce cas, vous pouvez mettre à jour le nom de famille de Jane en utilisant la déclaration suivante :
UPDATE employees
SET lastname = 'Smith'
WHERE employeeid = 3;
Code language: SQL (Structured Query Language) (sql)
Essayez-le
L'expression dans WHERE
clause garantit que nous mettons à jour uniquement l'enregistrement de Jane. Nous définissons le lastname
colonne en une chaîne littérale 'Smith'
.
Pour vérifier la UPDATE
, vous utilisez l'instruction suivante :
SELECT
employeeid,
firstname,
lastname,
title,
email
FROM
employees
WHERE
employeeid = 3;
Code language: SQL (Structured Query Language) (sql)
Essayez-le
2) Exemple de mise à jour de plusieurs colonnes
Supposons que Park Margaret
se situe à Toronto
et vous souhaitez modifier son adresse, sa ville et ses informations d'état. Vous pouvez utiliser la UPDATE
pour mettre à jour plusieurs colonnes comme suit :
UPDATE employees
SET city = 'Toronto',
state = 'ON',
postalcode = 'M5P 2N7'
WHERE
employeeid = 4;
Code language: SQL (Structured Query Language) (sql)
Essayez-le
Pour vérifier la UPDATE
, vous utilisez l'instruction suivante :
SELECT
employeeid,
firstname,
lastname,
state,
city,
PostalCode
FROM
employees
WHERE
employeeid = 4;
Code language: SQL (Structured Query Language) (sql)
Essayez-le
3) Mettre à jour avec ORDER BY
et LIMIT
exemple de clause
Notez que vous devez construire SQLite avec l'option SQLITE_ENABLE_UPDATE_DELETE_LIMIT afin d'effectuer UPDATE
instruction avec ORDER BY
facultatif et LIMIT
clauses.
Vérifions les adresses e-mail des employés dans le employees
tableau :
SELECT
employeeid,
firstname,
lastname,
email
FROM
employees;
Code language: SQL (Structured Query Language) (sql)
Essayez-le
Pour mettre à jour une ligne dans le employees
table, vous utilisez LIMIT 1
clause. Pour vous assurer que vous mettez à jour la première ligne des employés triés par le prénom, vous ajoutez le ORDER BY firstname
clause.
Ainsi, la déclaration suivante met à jour l'e-mail de Andrew Adams
:
UPDATE employees
SET email = LOWER(
firstname || "." || lastname || "@chinookcorp.com"
)
ORDER BY
firstname
LIMIT 1;
Code language: SQL (Structured Query Language) (sql)
Essayez-le
Le nouvel e-mail est la combinaison du prénom, du point (.), du nom et du suffixe @chinookcorp.com
Le LOWER()
convertit l'e-mail en minuscules.
4) Exemple de mise à jour de toutes les lignes
Pour mettre à jour toutes les lignes dans le employees
table, vous sautez le WHERE
clause. Par exemple, le UPDATE
suivant la déclaration change toutes les adresses e-mail de tous les employés en minuscules :
UPDATE employees
SET email = LOWER(
firstname || "." || lastname || "@chinookcorp.com"
);
Code language: SQL (Structured Query Language) (sql)
Essayez-le
Dans ce tutoriel, vous avez appris à utiliser SQLite UPDATE
pour mettre à jour les données existantes dans une table.
Références
- https://www.sqlite.org/lang_update.html – Instruction de mise à jour SQLite