MySQL VÄRSKENDA päringut näitega

⚡ Nutikas kokkuvõte

MySQL UPDATE päring muudab tabeli olemasolevaid ridu, muutes ühe või mitme välja ühe lausega. See ressurss selgitab UPDATE süntaksit, WHERE filtreerimist, liikmete tabeli toiminud näiteid ja kaitsemeetmeid, mis takistavad tahtmatuid massvärskendusi.

  • ✏️ Põhiväide: UPDATE `tabeli_nimi` SET `veerg_nimi` = 'new_value' [WHERE tingimus] kirjutab väärtused ümber igas reas, mis filtrile vastab.
  • ⚠️ Välja jäetud WHERE: Ilma WHERE-klauslita kirjutab UPDATE-lause tabeli iga rea ​​veeru ümber.
  • 🔢 Väärtuse vormindamine: Stringi- ja kuupäevaväärtuste puhul on vaja ülakomasid, numbriliste väärtuste puhul mitte ning kuupäevad järgivad vormingut 'AAAA-KK-PP'.
  • 🧩 Mitu veergu: Mitme välja ühe lausega värskendamiseks eralda iga omistamine komaga.
  • 🔍 Kinnitamise samm: Käivita WHERE-klausel esmalt SELECT-lausena ja korda seda pärast UPDATE-lauset uute väärtuste kinnitamiseks.
  • 🛡️ Turvalise värskenduse režiim: MySQL Workbench lükkab tagasi kõik UPDATE'i käsud, mille WHERE-klausel ei filtreeri võtmeveeru järgi.

Mis on UPDATE päring?

. UPDATE MySQL Käsku kasutatakse tabeli ridade muutmiseks. UPDATE päring saab muuta ühte või mitut välja korraga. Seda saab kasutada ka tabeli värskendamiseks. MySQL tabel, mille väärtused on võetud teisest tabelist.

Miks kasutada UPDATE päringut? MySQL?

Andmed püsivad harva igavesti õiged. Liikmed vahetavad telefoninumbreid, hinnad muutuvad ja tellimused muutuvad ootel olekust saadetavaks. Vana rea ​​kustutamine ja asendaja lisamine rikuks primaarvõtme ja kõik võõrvõtme viited. UPDATE-lause muudab rida kohapeal, nii et identiteet ja seosed jäävad muudatuse järel kehtima.

UPDATE päring on õige tööriist alati, kui:

  • Väärtus on vale või aegunud: Paranda valesti kirjutatud nimi või värskenda kontaktnumbrit ülejäänud kirjet puudutamata.
  • Staatus peab edasi liikuma: Muutke tellimuse olek „ootel“ olekust „saadetud“, kirjutades ühe veeru ümber.
  • Mitmed väljad muutuvad koos: Ühe lausega saab samas paroolis määrata nii uue nime kui ka uue aadressi.
  • Vajalik on hulgikorrektsioon: WHERE-klausel, mis leiab vasteid paljudele ridadele, rakendab sama muudatust kõigile ridadele korraga.

Kuna UPDATE ilma WHERE-klauslita kirjutab iga rea ​​ümber, eraldab filter rutiinse paranduse juhuslikust ülekirjutusest.

MySQL Värskendage käsu süntaksit

Kui eesmärk on paika pandud, on järgmine samm süntaks. UPDATE päringu põhivorm MySQL on näidatud allpool.

UPDATE `table_name` SET `column_name` = 'new_value' [WHERE condition];

SIIN:

  • UPDATE `tabeli_nimi` on käsk, mis ütleb MySQL tabelis olevate andmete muutmiseks.
  • MÄÄRA `veeru_nimi` = 'uus_väärtus' annab UPDATE päringu poolt mõjutatavate väljade nimed ja väärtused. Väärtuste määramisel peavad stringandmetüübid olema ülakomades. Numbrilised väärtused ei vaja jutumärke. Kuupäevaväärtused peavad olema ülakomades ja vormingus 'AAAA-KK-PP'.
  • [KUS tingimus] on valikuline ja seda saab kasutada filtri rakendamiseks, mis piirab UPDATE päringu poolt mõjutatud ridade arvu. Täielik valikute loend kuvatakse jaotises MySQL UUENDUSTE AVALDUSE KÄSIRAAMAT.

Vaatame nüüd praktilist näidet, mis värskendab andmeid liikmete tabelis.

Uuendage sisse MySQL Näide

Oletame, et liikmetel liikmenumbritega 1 ja 2 on vaja oma andmetes teha järgmised uuendused.

Liikmenumber Vajalikud värskendused
1 Muutke kontaktnumbrit 999-lt numbrile 0759 253 532
2 Muutke nimi Janet Smith Jonesiks ja värskendage füüsilist aadressi Melrose 123-ks

Ühe veeru värskendamine

Alustame liikmenumbriga 1. Enne muudatuste tegemist otsime selle kirje üles.

SELECT * FROM `members` WHERE `membership_number` = 1;

Ülaltoodud skripti täitmine annab meile järgmised tulemused.

liikme_number täis_nimed sugu sünnikuupäev füüsiline_aadress postiaadress kontaktnumber e-mail
1 Janet Jones Naine 21-07-1980 Esimese tänava krunt nr 4 Privaatne kott 999 janetjones@yagoo.cm

Värskendame nüüd kontaktnumbrit allpool näidatud skripti abil.

UPDATE `members` SET `contact_number` = '0759 253 532' WHERE `membership_number` = 1;

Ülaltoodud skripti käivitamine muudab liikmenumbri 1 kontaktnumbri 999-lt numbrile 0759 253 532. SELECT-i uuesti käivitamine kinnitab uue väärtuse.

liikme_number täis_nimed sugu sünnikuupäev füüsiline_aadress postiaadress kontaktnumber e-mail
1 Janet Jones Naine 21-07-1980 Esimese tänava krunt nr 4 Privaatne kott +0759 253 janetjones@yagoo.cm

Mitme veeru värskendamine

Liikmelisuse number 2 vajab korraga kahe välja muutmist. See on kirje enne uuendamist.

liikme_number täis_nimed sugu sünnikuupäev füüsiline_aadress postiaadress kontaktnumber e-mail
2 Smith Jones Naine 23-06-1980 Pargi tänav NULL NULL jj@fstreet.com

Järgnev skript uuendab mõlemat veergu ühe lausega. Pane tähele koma, mis eraldab kahte omistamist.

UPDATE `members` SET `full_names` = 'Janet Smith Jones', `physical_address` = 'Melrose 123' WHERE `membership_number` = 2;

Ülaltoodud skripti käivitamine uuendab liikmenumbri 2 täisnimeks Janet Smith Jones ja füüsiliseks aadressiks Melrose 123.

liikme_number täis_nimed sugu sünnikuupäev füüsiline_aadress postiaadress kontaktnumber e-mail
2 Janet Smith Jones Naine 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com

💡 Näpunäide: "KUS klausel” piirab UPDATE päringu poolt mõjutatud ridade arvu. Selle väljajätmine kirjutab kõik tabeli read ümber.

KKK

MySQL tagastab loenduri „Leitud read” ja „Muudetud read”. „Leitud read” näitab, mitu rida WHERE-klausliga valiti, samas kui „Muudetud read” ei hõlma ridu, mille uus väärtus oli vanaga identne.

Jah. Kombineeri UPDATE a-ga LIITU ja viidake SET-klausli teisele tabelile. Liitumistingimus otsustab, milline lähterida annab iga sihtrea jaoks uue väärtuse.

Mähi see tehingusse. Käsk START TRANSACTION ja sellele järgnev ROLLBACK taastab vanad väärtused. Kui muudatus on tehtud, saab eelmisi andmeid taastada ainult varukoopia, seega testi WHERE-klauslit esmalt SELECT-iga.

Jah. Tehisintellekti assistendid teisendavad kirjeldatud muudatuse UPDATE süntaksiks ja pakuvad välja WHERE-klausli. Andke mudelile oma tabeli struktuur ja seejärel kontrollige filtrit SELECT-lausega enne genereeritud päringu käivitamist.

Tehisintellekti mudel ei näe teie reaalajas ridu, seega võib veidi vale WHERE-klausel tuhandeid kirjeid vaikselt ümber kirjutada. RevVaadake iga genereeritud avaldust, käivitage see algversioonis ja hoidke ajakohast varukoopiat.

Võta see postitus kokku järgmiselt: