MySQL ZAKTUALIZUJ zapytanie z przykładem
⚡ Inteligentne podsumowanie
MySQL Zapytanie UPDATE modyfikuje istniejące wiersze w tabeli, zmieniając jedno lub kilka pól w jednym poleceniu. Ten materiał wyjaśnia składnię polecenia UPDATE, filtrowanie WHERE, przykłady zastosowania w tabeli members oraz zabezpieczenia zapobiegające niezamierzonym masowym aktualizacjom.

Co to jest zapytanie UPDATE?
Aktualizacja MySQL Polecenie UPDATE służy do modyfikacji wierszy w tabeli. Zapytanie UPDATE może zmienić jedno lub wiele pól jednocześnie. Można go również użyć do aktualizacji MySQL tabela zawierająca wartości pobrane z innej tabeli.
Dlaczego warto używać zapytania UPDATE w MySQL?
Dane rzadko pozostają poprawne na zawsze. Członkowie zmieniają numery telefonów, ceny ulegają zmianom, a zamówienia zmieniają się z oczekujących na wysłane. Usunięcie starego wiersza i wstawienie nowego spowodowałoby uszkodzenie klucza podstawowego i wszelkich odwołań do kluczy obcych. Polecenie UPDATE edytuje wiersz na miejscu, dzięki czemu tożsamość i relacje zachowują poprawność.
Zapytanie UPDATE jest właściwym narzędziem, gdy:
- Wartość jest błędna lub nieaktualna: Popraw błędnie napisane nazwisko lub odśwież numer telefonu, nie zmieniając reszty rekordu.
- Status musi się zmieniać: Zmień status zamówienia z „oczekującego” na „wysłane”, przepisując jedną kolumnę.
- Kilka pól zmienia się jednocześnie: Jedno polecenie może ustawić nową nazwę i nowy adres w tym samym przebiegu.
- Potrzebna jest korekta zbiorcza: Klauzula WHERE, która pasuje do wielu wierszy, stosuje tę samą edycję do wszystkich z nich jednocześnie.
Ponieważ instrukcja UPDATE bez klauzuli WHERE nadpisuje każdy wiersz, filtr oddziela rutynową korektę od przypadkowego nadpisania.
MySQL Zaktualizuj składnię poleceń
Mając ustalony cel, kolejnym krokiem jest składnia. Podstawowa forma zapytania UPDATE w MySQL jest pokazany poniżej.
UPDATE `table_name` SET `column_name` = 'new_value' [WHERE condition];
TUTAJ:
- AKTUALIZACJA `table_name` to polecenie, które mówi MySQL Aby zmodyfikować dane w tabeli.
- USTAW `column_name` = 'new_value' Podaje nazwy i wartości pól, na które ma wpływ zapytanie UPDATE. Podczas ustawiania wartości, typy danych typu string muszą być ujęte w pojedyncze cudzysłowy. Wartości liczbowe nie wymagają cudzysłowów. Wartości dat muszą być ujęte w pojedyncze cudzysłowy i w formacie „RRRR-MM-DD”.
- [warunek GDZIE] Jest opcjonalny i można go użyć do zastosowania filtra ograniczającego liczbę wierszy objętych zapytaniem UPDATE. Pełna lista opcji znajduje się w MySQL Instrukcja dotycząca instrukcji UPDATE.
Przyjrzyjmy się teraz praktycznemu przykładowi aktualizacji danych w tabeli członków.
Zaktualizuj w MySQL Przykład
Załóżmy, że członkowie o numerach członkowskich 1 i 2 mają wprowadzić następujące aktualizacje do swoich rejestrów.
| Numer członkowski | Wymagane aktualizacje |
|---|---|
| 1 | Zmień numer kontaktowy z 999 na 0759 253 532 |
| 2 | Zmień imię na Janet Smith Jones i zaktualizuj adres fizyczny na Melrose 123 |
Aktualizuj pojedynczą kolumnę
Zacznijmy od numeru członkostwa 1. Zanim dokonamy jakichkolwiek zmian, odzyskajmy ten rekord.
SELECT * FROM `members` WHERE `membership_number` = 1;
Wykonanie powyższego skryptu daje nam następujące wyniki.
| numer_członkostwa | pełne nazwy | płeć | data_urodzenia | adres fizyczny | adres_pocztowy | numer kontaktowy | |
|---|---|---|---|---|---|---|---|
| 1 | Żaneta Jones | Kobieta | 21-07-1980 | Działka przy ulicy Pierwszej nr 4 | Prywatna torba | 999 | janetjones@yagoo.cm |
Zaktualizujmy teraz numer kontaktowy, korzystając ze skryptu pokazanego poniżej.
UPDATE `members` SET `contact_number` = '0759 253 532' WHERE `membership_number` = 1;
Wykonanie powyższego skryptu powoduje zmianę numeru kontaktowego z 999 na 0759 253 532 dla numeru członkowskiego 1. Ponowne uruchomienie polecenia SELECT potwierdza nową wartość.
| numer_członkostwa | pełne nazwy | płeć | data_urodzenia | adres fizyczny | adres_pocztowy | numer kontaktowy | |
|---|---|---|---|---|---|---|---|
| 1 | Żaneta Jones | Kobieta | 21-07-1980 | Działka przy ulicy Pierwszej nr 4 | Prywatna torba | 0759 253 532 | janetjones@yagoo.cm |
Aktualizuj wiele kolumn
Numer członkostwa 2 wymaga jednoczesnej zmiany dwóch pól. To jest rekord przed aktualizacją.
| numer_członkostwa | pełne nazwy | płeć | data_urodzenia | adres fizyczny | adres_pocztowy | numer kontaktowy | |
|---|---|---|---|---|---|---|---|
| 2 | Smith Jones | Kobieta | 23-06-1980 | Park Street | NULL | NULL | jj@fstreet.com |
Poniższy skrypt aktualizuje obie kolumny w jednym poleceniu. Zwróć uwagę na przecinek oddzielający oba przypisania.
UPDATE `members` SET `full_names` = 'Janet Smith Jones', `physical_address` = 'Melrose 123' WHERE `membership_number` = 2;
Wykonanie powyższego skryptu spowoduje aktualizację pełnego imienia i nazwiska osoby o numerze członkowskim 2 na Janet Smith Jones, a adresu fizycznego na Melrose 123.
| numer_członkostwa | pełne nazwy | płeć | data_urodzenia | adres fizyczny | adres_pocztowy | numer kontaktowy | |
|---|---|---|---|---|---|---|---|
| 2 | Janet Smith Jones | Kobieta | 23-06-1980 | Melroza 123 | NULL | NULL | jj@fstreet.com |
💡 Wskazówka: "klauzula GDZIE„ to limit liczby wierszy objętych zapytaniem UPDATE. Pominięcie tego parametru spowoduje przepisanie każdego wiersza w tabeli.
