Ten samouczek jest częścią serii Naucz się podstawowych zapytań SQL przy użyciu MySQL. W tym samouczku omówimy zapytania SQL w celu aktualizacji wierszy
Aktualizuj zapytanie
Polecenie AKTUALIZUJ może służyć do modyfikowania lub aktualizowania wierszy tabeli za pomocą słowa kluczowego SET. Jeśli jesteś zdalnie zalogowany do bazy danych, będziesz potrzebować również uprawnienia UPDATE dla tabeli, aby odczytać wiersze z tabeli.
# UPDATE - Syntax
UPDATE `table_name` SET `column_1` = <value>, `column_2` = <value> ... [WHERE <single or multiple filter conditions>];
Objaśnienie zapytania
Polecenie MySQL AKTUALIZUJ może służyć do modyfikacji wierszy lub danych o podanej nazwie tabeli, gdzie nazwa kolumny, wartość wiersza i nazwa tabeli są obowiązkowe. ZESTAW słowo kluczowe jest wymagane w celu ustawienia nowej wartości kolumny.
Musimy podać co najmniej jedną kolumnę i jest to nowa wartość podczas korzystania z zapytania UPDATE. Wartość musi być ujęta w pojedynczy cudzysłów, jeśli jest wartością ciągu.
Musimy również określić warunki, które należy wziąć pod uwagę podczas aktualizacji wierszy. Użycie klauzuli WHERE z poleceniem UPDATE jest wymagane, gdy musimy selektywnie aktualizować wiersze, które
Przykłady
Ta sekcja zawiera przykłady aktualizacji wierszy tabeli za pomocą polecenia UPDATE. Użyj poniższego zapytania, aby utworzyć tabelę użytkowników zawierającą identyfikator, imię, nazwisko i aktywne kolumny do przechowywania danych użytkownika.
# Create the User Table
CREATE TABLE `enterprise`.`user` (
`user_id` BIGINT NOT NULL,
`first_name` VARCHAR(45) ,
`last_name` VARCHAR(45),
`active` TINYINT(1) NOT NULL DEFAULT 0,
PRIMARY KEY (`user_id`));
Poniższe zapytanie może zostać użyte do wstawienia danych do tabeli użytkowników.
# Insert Rows - All Columns
INSERT INTO `user` ( `user_id`, `first_name`, `last_name`, `active` ) VALUES
( 1, 'John', 'Smith', 1 ),
( 2, 'Rick', 'Jones', 1 ),
( 3, 'Catherine', 'Ponting', 0 ),
( 4, 'Harsh', 'Upadhyay', 1 ),
( 5, 'Tajwinder', 'Singh', 0 );
Wspomniane powyżej zapytanie wstawi do tabeli 5 wierszy z identyfikatorem, imieniem, nazwiskiem i aktywnymi kolumnami reprezentującymi 5 różnych użytkowników.
Teraz zaktualizujemy dane wstawione przez nas w tabeli użytkowników. Można to zrobić za pomocą polecenia UPDATE, jak pokazano poniżej.
# UPDATE - Activate all the inactive users - without key column
UPDATE `user` SET `active` = 1 WHERE `active` = 0;
# Notes - Workbench - You might need to disable safe updates in case the primary key is not used in WHERE clause
SET SQL_SAFE_UPDATES = 0;
UPDATE `user` SET `active` = 1 WHERE `active` = 0;
SET SQL_SAFE_UPDATES = 0;
# Result
1 John Smith 1
2 Rick Jones 1
3 Catherine Ponting 1
4 Harsh Upadhyay 1
5 Tajwinder Singh 1
# UPDATE - Deactivate selective users - with key column
UPDATE `user` SET `active` = 0 WHERE `user_id` = 1;
UPDATE `user` SET `active` = 0 WHERE `user_id` IN( 3, 5 );
# Result
1 John Smith 0
2 Rick Jones 1
3 Catherine Ponting 0
4 Harsh Upadhyay 1
5 Tajwinder Singh 0
Powyższe zapytania aktualizują tabelę użytkowników za pomocą klauzuli WHERE. Wiersze tabeli zostaną zaktualizowane w przypadku, gdy wiersz spełnia podane warunki.
Możemy również zaktualizować wartości wielu kolumn, jak pokazano poniżej.
# UPDATE - Modify first name and last name of first user
UPDATE `user` SET `first_name` = 'Roy', `last_name` = 'Jordan' WHERE `user_id` = 1;
# Result
1 Roy Jordan 0
2 Rick Jones 1
3 Catherine Ponting 0
4 Harsh Upadhyay 1
5 Tajwinder Singh 0
W ten sposób możemy modyfikować dane przechowywane w tabelach MySQL.