MySQL UPDATE Interogare cu Exemplu
โก Rezumat inteligent
MySQL Interogarea UPDATE modificฤ rรขndurile existente dintr-un tabel, schimbรขnd unul sau mai multe cรขmpuri รฎntr-o singurฤ instrucศiune. Aceastฤ resursฤ explicฤ sintaxa UPDATE, filtrarea WHERE, exemple concrete รฎn tabelul membri ศi mฤsurile de siguranศฤ care previn actualizฤrile รฎn masฤ neintenศionate.

Ce este interogarea UPDATE?
UPDATE MySQL Comanda este utilizatฤ pentru a modifica rรขndurile dintr-un tabel. Interogarea UPDATE poate modifica un singur cรขmp sau mai multe cรขmpuri simultan. De asemenea, poate fi utilizatฤ pentru a actualiza un MySQL tabel cu valori preluate dintr-un alt tabel.
De ce sฤ folosiศi interogarea UPDATE รฎn MySQL?
Datele rareori rฤmรขn corecte pentru totdeauna. Membrii รฎศi schimbฤ numerele de telefon, preศurile se modificฤ, iar comenzile trec din starea โaศteptareโ รฎn starea โexpediateโ. ศtergerea rรขndului vechi ศi inserarea unui รฎnlocuitor ar deteriora cheia primarฤ ศi orice referinศe la chei externe. Instrucศiunea UPDATE editeazฤ rรขndul la locul sฤu, astfel รฎncรขt identitatea ศi relaศiile supravieศuiesc modificฤrii.
Interogarea UPDATE este instrumentul potrivit oricรขnd:
- O valoare este greศitฤ sau รฎnvechitฤ: Corectaศi un nume scris greศit sau actualizaศi un numฤr de contact fฤrฤ a atinge restul รฎnregistrฤrii.
- Un statut trebuie sฤ avanseze: Inversaศi o comandฤ din โรฎn aศteptareโ รฎn โexpediatฤโ prin rescrierea unei singure coloane.
- Mai multe cรขmpuri se schimbฤ odatฤ: O singurฤ instrucศiune poate seta un nume nou ศi o adresฤ nouฤ รฎn aceeaศi trecere.
- Este necesarฤ o corecศie รฎn bloc: O clauzฤ WHERE care se potriveศte cu mai multe rรขnduri aplicฤ aceeaศi editare tuturor simultan.
Deoarece o instrucศiune UPDATE fฤrฤ clauzฤ WHERE rescrie fiecare rรขnd, filtrul separฤ o corecศie de rutinฤ de o suprascriere accidentalฤ.
MySQL Actualizaศi sintaxa comenzii
Odatฤ stabilit scopul, urmฤtorul pas este sintaxa. Forma de bazฤ a interogฤrii UPDATE รฎn MySQL este prezentat mai jos.
UPDATE `table_name` SET `column_name` = 'new_value' [WHERE condition];
AICI:
- ACTUALIZARE `nume_tabel` este comanda care spune MySQL pentru a modifica datele dintr-un tabel.
- SET `nume_coloanฤ` = 'valoare_nouฤ' oferฤ numele ศi valorile cรขmpurilor care vor fi afectate de interogarea UPDATE. La setarea valorilor, tipurile de date de tip ศir de caractere trebuie sฤ fie รฎntre ghilimele simple. Valorile numerice nu necesitฤ ghilimele. Valorile de tip datฤ trebuie sฤ fie รฎntre ghilimele simple ศi รฎn formatul โAAAA-LL-ZZโ.
- [condiศia UNDE] este opศional ศi poate fi utilizat pentru a aplica un filtru care restricศioneazฤ numฤrul de rรขnduri afectate de interogarea UPDATE. Lista completฤ de opศiuni apare รฎn MySQL Manualul declaraศiilor UPDATE.
Sฤ analizฤm acum un exemplu practic care actualizeazฤ datele din tabelul de membri.
Actualizaศi รฎn MySQL Exemplu
Sฤ presupunem cฤ membrii cu numerele de membru 1 ศi 2 au urmฤtoarele actualizฤri de fฤcut la รฎnregistrฤrile lor.
| Numar de membru | Sunt necesare actualizฤri |
|---|---|
| 1 | Schimbaศi numฤrul de contact de la 999 la 0759 253 532 |
| 2 | Schimbaศi numele รฎn Janet Smith Jones ศi actualizaศi adresa fizicฤ la Melrose 123 |
Actualizaศi o singurฤ coloanฤ
รncepem cu numฤrul de membru 1. รnainte de a face orice modificare, haideศi sฤ recuperฤm acea รฎnregistrare.
SELECT * FROM `members` WHERE `membership_number` = 1;
Executarea scriptului de mai sus ne oferฤ urmฤtoarele rezultate.
| numar de membru | nume complete | sex | data naศterii | adresฤ fizicฤ | adresฤ_poศtalฤ | numฤr_de_contact | |
|---|---|---|---|---|---|---|---|
| 1 | Janet Jones | Femeie | 21-07-1980 | Primul teren stradal nr. 4 | Geantฤ privatฤ | 999 | janetjones@yagoo.cm |
Sฤ actualizฤm acum numฤrul de contact folosind scriptul prezentat mai jos.
UPDATE `members` SET `contact_number` = '0759 253 532' WHERE `membership_number` = 1;
Executarea scriptului de mai sus modificฤ numฤrul de contact de la 999 la 0759 253 532 pentru numฤrul de membru 1. Rularea din nou a comenzii SELECT confirmฤ noua valoare.
| numar de membru | nume complete | sex | data naศterii | adresฤ fizicฤ | adresฤ_poศtalฤ | numฤr_de_contact | |
|---|---|---|---|---|---|---|---|
| 1 | Janet Jones | Femeie | 21-07-1980 | Primul teren stradal nr. 4 | Geantฤ privatฤ | 0759 253 532 | janetjones@yagoo.cm |
Actualizaศi mai multe coloane
Numฤrul de membru 2 necesitฤ modificarea a douฤ cรขmpuri simultan. Aceasta este รฎnregistrarea de dinainte de actualizare.
| numar de membru | nume complete | sex | data naศterii | adresฤ fizicฤ | adresฤ_poศtalฤ | numฤr_de_contact | |
|---|---|---|---|---|---|---|---|
| 2 | Smith Jones | Femeie | 23-06-1980 | Strada Park | NULL | NULL | jj@fstreet.com |
Urmฤtorul script actualizeazฤ ambele coloane รฎntr-o singurฤ instrucศiune. Reศineศi virgula care separฤ cele douฤ atribuiri.
UPDATE `members` SET `full_names` = 'Janet Smith Jones', `physical_address` = 'Melrose 123' WHERE `membership_number` = 2;
Executarea scriptului de mai sus actualizeazฤ numele complete pentru numฤrul de membru 2 la Janet Smith Jones ศi adresa fizicฤ la Melrose 123.
| numar de membru | nume complete | sex | data naศterii | adresฤ fizicฤ | adresฤ_poศtalฤ | numฤr_de_contact | |
|---|---|---|---|---|---|---|---|
| 2 | Janet Smith Jones | Femeie | 23-06-1980 | Melrose 123 | NULL | NULL | jj@fstreet.com |
๐ก Sfat: "clauza WHEREโโ este ceea ce limiteazฤ numฤrul de rรขnduri afectate de interogarea UPDATE. Omiteศi-l ศi fiecare rรขnd din tabel este rescris.
