Aktualizacja danych w bazie – update

Dane w bazie bardzo często wymagają aktualizacji. Zmianę wartości można zrealizować poprzez kwerendę update. Ogólna składna wyrażenia jest następująca:

update nazwa_tabeli set kolumna = wartość where warunki_aktualizacji

warunek where jest opcjonalny i można skrócić zapis, jeśli aktualizacja ma dotyczyć wszystkich rekordów w tabeli:

update nazwa_tabeli set kolumna = wartość

Można zmieniać wiele wartości dla każdego rekordu, rozdzielając aktualizowane kolumny przecinkami:

update nazwa_tabeli set kolumna1 = wartość1, kolumna2 = wartość2 where warunki_aktualizacji

Uwaga: Update zakłada lokalną transakcję bazodanową na czas aktualizacji danych.

Przykłady:

Dla tabeli accounts:

Zawartość tabeli accounts
Zmiana jednej wartości:

Dla id = 1 możemy zmienić zmienić wartość pola value kodem:

update accounts set value = 2 where id = 1

Wartość rekordu z id = 1 została zaktualizowana na:

Wynik działania: update accounts set value = 2 where id = 1

Inne rekordy nie zostały zaktualizowanie, ponieważ w warunku where aktualizacja miała dotyczyć tylko rekordu z id = 1

Zmiana wielu wartości:

Możemy zmienić wiele wartości w jednym rekordzie kodem:

update accounts set value = 4, number = 'TEST 12345' where id = 1

W wyniku czego rekord o id równym 1 będzie miał wartość:

Wynik działania: update accounts set value = 4, number = 'TEST 12345′ where id = 1
Aktualizacja całej zawartości tabeli:

Kod:

update accounts set value = 4 where id between 2 and 4

Zaktualizuje value na 4 w tabeli accounts, gdzie id rekordów jest między 2 oraz 4:

Rezultat zapytania: update accounts set value = 4 where id between 2 and 4

Wykonując poniższy kod:

update accounts set value = 5

Zmieni wartości value dla wszystkich rekordów w tabeli:

Wynik kwerendy: update accounts set value = 5
Przepisywanie pul w tabeli:

Poniższym kodem możemy przepisać id do pola value dla każdego rekordu:

update accounts set value = id

Otrzymamy:

Wynik kwerendy: update accounts set value = id

Dołącz do rozmowy

1 komentarz

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *