SQLite
 sql >> Datenbank >  >> RDS >> SQLite

SQLite-Update

Zusammenfassung :In diesem Tutorial lernen Sie, wie Sie SQLite UPDATE verwenden -Anweisung, um Daten bestehender Zeilen in der Tabelle zu aktualisieren.

Einführung in SQLite UPDATE Erklärung

Um vorhandene Daten in einer Tabelle zu aktualisieren, verwenden Sie SQLite UPDATE Erklärung. Im Folgenden wird die Syntax des UPDATE veranschaulicht Aussage:

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)

In dieser Syntax:

  • Geben Sie zuerst die Tabelle an, die Sie nach dem UPDATE aktualisieren möchten Klausel.
  • Legen Sie zweitens einen neuen Wert für jede Spalte der Tabelle im SET fest Klausel.
  • Drittens spezifizieren Sie Zeilen, die aktualisiert werden sollen, indem Sie eine Bedingung in WHERE verwenden Klausel. Das WHERE Klausel ist optional. Wenn Sie es überspringen, wird das UPDATE -Anweisung aktualisiert Daten in allen Zeilen der Tabelle.
  • Verwenden Sie zum Schluss den ORDER BY und LIMIT Klauseln im UPDATE -Anweisung, um die Anzahl der zu aktualisierenden Zeilen anzugeben.

Beachten Sie, dass Sie einen negativen Wert in LIMIT verwenden -Klausel geht SQLite davon aus, dass es keine Begrenzung gibt, und aktualisiert alle Zeilen, die die Bedingung im vorhergehenden WHERE erfüllen Klausel.

Der ORDER BY -Klausel sollte immer mit dem LIMIT gehen -Klausel, um genau anzugeben, welche Zeilen aktualisiert werden sollen. Andernfalls werden Sie nie wissen, welche Zeile tatsächlich aktualisiert wird; denn ohne den ORDER BY -Klausel ist die Reihenfolge der Zeilen in der Tabelle nicht angegeben.

SQLite UPDATE Anweisungsbeispiele

Wir verwenden die employees Tabelle in der Beispieldatenbank, um das UPDATE zu demonstrieren Aussage.

Das folgende SELECT -Anweisung erhält Teildaten von den employees Tabelle:

SELECT
	employeeid,
	firstname,
	lastname,
	title,
	email
FROM
	employees;Code language: SQL (Structured Query Language) (sql)

Probieren Sie es aus

1) Beispiel zum Aktualisieren einer Spalte

Angenommen, Jane hat geheiratet und möchte ihren Nachnamen in den Nachnamen ihres Mannes ändern, d. h. Smith . In diesem Fall können Sie Janes Nachnamen mit der folgenden Anweisung aktualisieren:

UPDATE employees
SET lastname = 'Smith'
WHERE employeeid = 3;Code language: SQL (Structured Query Language) (sql)

Probieren Sie es aus

Der Ausdruck im WHERE Klausel stellt sicher, dass wir nur Janes Datensatz aktualisieren. Wir setzen den lastname -Spalte in eine Literalzeichenfolge 'Smith' .

Um das UPDATE zu überprüfen verwenden Sie die folgende Anweisung:

SELECT
	employeeid,
	firstname,
	lastname,
	title,
	email
FROM
	employees
WHERE
	employeeid = 3;Code language: SQL (Structured Query Language) (sql)

Probieren Sie es aus

2) Beispiel zum Aktualisieren mehrerer Spalten

Angenommen Park Margaret befindet sich in Toronto und Sie möchten seine Adress-, Stadt- und Bundeslandinformationen ändern. Sie können das UPDATE verwenden -Anweisung zum Aktualisieren mehrerer Spalten wie folgt:

UPDATE employees
SET city = 'Toronto',
    state = 'ON',
    postalcode = 'M5P 2N7'
WHERE
    employeeid = 4;Code language: SQL (Structured Query Language) (sql)

Probieren Sie es aus

Um das UPDATE zu überprüfen verwenden Sie die folgende Anweisung:

SELECT
	employeeid,
	firstname,
	lastname,
	state,
	city,
	PostalCode
FROM
	employees
WHERE
	employeeid = 4;Code language: SQL (Structured Query Language) (sql)

Probieren Sie es aus

3) Aktualisieren Sie mit ORDER BY und LIMIT Beispiel für Klauseln

Beachten Sie, dass Sie SQLite mit der Option SQLITE_ENABLE_UPDATE_DELETE_LIMIT erstellen müssen, um UPDATE auszuführen Anweisung mit optionalem ORDER BY und LIMIT Klauseln.

Lassen Sie uns die E-Mail-Adressen der Mitarbeiter in den employees überprüfen Tabelle:

SELECT
	employeeid,
	firstname,
	lastname,
	email
FROM
	employees;Code language: SQL (Structured Query Language) (sql)

Probieren Sie es aus

Um eine Zeile in den employees zu aktualisieren Tabelle verwenden Sie LIMIT 1 Klausel. Um sicherzustellen, dass Sie die erste Zeile der nach Vornamen sortierten Mitarbeiter aktualisieren, fügen Sie den ORDER BY firstname hinzu Klausel.

Die folgende Anweisung aktualisiert also die E-Mail von Andrew Adams :

UPDATE employees
SET email = LOWER(
	firstname || "." || lastname || "@chinookcorp.com"
)
ORDER BY
	firstname
LIMIT 1;Code language: SQL (Structured Query Language) (sql)

Probieren Sie es aus

Die neue E-Mail ist die Kombination aus Vorname, Punkt (.), Nachname und dem Suffix @chinookcorp.com

Der LOWER() Funktion konvertiert die E-Mail in Kleinbuchstaben.

4) Beispiel zum Aktualisieren aller Zeilen

Um alle Zeilen in employees zu aktualisieren Tabelle überspringen Sie das WHERE Klausel. Zum Beispiel das folgende UPDATE -Anweisung ändert alle E-Mail-Adressen aller Mitarbeiter in Kleinbuchstaben:

UPDATE employees
SET email = LOWER(
	firstname || "." || lastname || "@chinookcorp.com"
);Code language: SQL (Structured Query Language) (sql)

Probieren Sie es aus

In diesem Tutorial haben Sie gelernt, wie Sie das SQLite UPDATE verwenden -Anweisung, um vorhandene Daten in einer Tabelle zu aktualisieren.

Referenzen

  • https://www.sqlite.org/lang_update.html – SQLite-Update-Anweisung