MySQL UPDATE Query met voorbeeld

โšก Slimme samenvatting

MySQL Met een UPDATE-query worden bestaande rijen in een tabel gewijzigd, waarbij รฉรฉn of meerdere velden in รฉรฉn instructie worden aangepast. Deze handleiding legt de UPDATE-syntaxis uit, het filteren met WHERE, geeft uitgewerkte voorbeelden op de tabel 'members' en beschrijft de beveiligingsmaatregelen die onbedoelde massale updates voorkomen.

  • โ€‹ Kernverklaring: UPDATE `table_name` SET `column_name` = 'new_value' [WHERE condition] herschrijft de waarden in elke rij die aan het filter voldoet.
  • โš ๏ธ Weggelaten WAAR: Zonder een WHERE-clausule herschrijft de UPDATE-instructie de kolom in elke rij van de tabel.
  • ๐Ÿ”ข Waardeopmaak: Tekst- en datumwaarden vereisen enkele aanhalingstekens, numerieke waarden niet, en datums volgen het formaat 'JJJJ-MM-DD'.
  • ๐Ÿงฉ Meerdere kolommen: Scheid elke toewijzing met een komma om meerdere velden in รฉรฉn instructie bij te werken.
  • ๐Ÿ” Verificatiestap: Voer de WHERE-clausule eerst uit als een SELECT-instructie en herhaal deze vervolgens na de UPDATE om de nieuwe waarden te bevestigen.
  • ๐Ÿ›ก๏ธ Veilige updatemodus: MySQL Workbench weigert elke UPDATE waarvan de WHERE-clausule niet filtert op een sleutelkolom.

Wat is de UPDATE-query?

De UPDATE MySQL De UPDATE-opdracht wordt gebruikt om rijen in een tabel te wijzigen. De UPDATE-query kan รฉรฉn veld of meerdere velden tegelijk wijzigen. Het kan ook worden gebruikt om een โ€‹โ€‹tabel bij te werken. MySQL Tabel met waarden uit een andere tabel.

Waarom de UPDATE-query gebruiken in MySQL?

Gegevens blijven zelden voor altijd correct. Leden wijzigen telefoonnummers, prijzen veranderen en bestellingen verschuiven van 'in behandeling' naar 'verzonden'. Het verwijderen van de oude rij en het invoegen van een vervangende rij zou de primaire sleutel en alle verwijzingen naar externe sleutels verbreken. De UPDATE-instructie bewerkt de rij ter plaatse, waardoor identiteit en relaties behouden blijven na de wijziging.

De UPDATE-query is het juiste hulpmiddel in de volgende gevallen:

  • Een waarde is onjuist of verouderd: Corrigeer een verkeerd gespelde naam of werk een contactnummer bij zonder de rest van het record aan te raken.
  • Er moet vooruitgang worden geboekt: Zet een bestelling van 'in behandeling' naar 'verzonden' door รฉรฉn kolom te herschrijven.
  • Verschillende velden veranderen tegelijk: Met รฉรฉn enkele instructie kunnen in dezelfde stap een nieuwe naam en een nieuw adres worden ingesteld.
  • Een bulkcorrectie is nodig: Een WHERE-clausule die overeenkomt met meerdere rijen past dezelfde bewerking in รฉรฉn keer op al deze rijen toe.

Omdat een UPDATE zonder WHERE-clausule elke rij overschrijft, scheidt het filter een routinecorrectie van een onbedoelde overschrijving.

MySQL Update de opdrachtsyntaxis

Nu het doel is vastgesteld, is de volgende stap de syntaxis. De basisvorm van de UPDATE-query in MySQL wordt hieronder getoond.

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

HIER:

  • UPDATE `table_name` is het commando dat vertelt MySQL De gegevens in een tabel wijzigen.
  • SET `column_name` = 'new_value' Geeft de namen en waarden weer van de velden die door de UPDATE-query worden beรฏnvloed. Bij het instellen van de waarden moeten tekenreeksgegevenstypen tussen enkele aanhalingstekens staan. Numerieke waarden hoeven geen aanhalingstekens te hebben. Datumwaarden moeten tussen enkele aanhalingstekens staan โ€‹โ€‹en de indeling 'JJJJ-MM-DD' hebben.
  • [WHERE-voorwaarde] is optioneel en kan worden gebruikt om een โ€‹โ€‹filter toe te passen dat het aantal rijen beperkt dat door de UPDATE-query wordt beรฏnvloed. De volledige lijst met opties vindt u in de MySQL UPDATE-verklaringhandleiding.

Laten we nu een praktisch voorbeeld bekijken waarin gegevens in de ledentabel worden bijgewerkt.

Update in MySQL Voorbeeld

Stel dat de leden met lidmaatschapsnummer 1 en 2 de volgende wijzigingen in hun gegevens moeten aanbrengen.

Lidmaatschapsnummer Updates vereist
1 Wijzig het contactnummer van 999 naar 0759 253 532
2 Wijzig de naam in Janet Smith Jones en werk het fysieke adres bij naar Melrose 123.

Een enkele kolom bijwerken

We beginnen met lidmaatschapsnummer 1. Voordat we iets wijzigen, halen we eerst dat record op.

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

Als u bovenstaand script uitvoert, krijgt u de volgende resultaten.

lidmaatschapsnummer volledige namen geslacht geboortedatum fysiek adres postadres contact_nummer email
1 Janet Jones Vrouwen 21-07-1980 Eerste straatkavel nr. 4 Privรฉ tas 999 janetjones@yagoo.cm

Laten we nu het contactnummer bijwerken met behulp van het onderstaande script.

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

Door het bovenstaande script uit te voeren, wordt het contactnummer voor lidmaatschapsnummer 1 gewijzigd van 999 naar 0759 253 532. Het opnieuw uitvoeren van de SELECT-query bevestigt de nieuwe waarde.

lidmaatschapsnummer volledige namen geslacht geboortedatum fysiek adres postadres contact_nummer email
1 Janet Jones Vrouwen 21-07-1980 Eerste straatkavel nr. 4 Privรฉ tas 0759 253 532 janetjones@yagoo.cm

Meerdere kolommen bijwerken

Voor lidmaatschap nummer 2 moeten twee velden tegelijk worden gewijzigd. Dit is het record vรณรณr de update.

lidmaatschapsnummer volledige namen geslacht geboortedatum fysiek adres postadres contact_nummer email
2 Smit Jones Vrouwen 23-06-1980 Parkstraat NULL NULL jj@fstreet.com

Het volgende script werkt beide kolommen in รฉรฉn keer bij. Let op de komma die de twee toewijzingen scheidt.

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

Door het bovenstaande script uit te voeren, worden de volledige namen voor lidmaatschapsnummer 2 bijgewerkt naar Janet Smith Jones en het fysieke adres naar Melrose 123.

lidmaatschapsnummer volledige namen geslacht geboortedatum fysiek adres postadres contact_nummer email
2 Janet Smit Jones Vrouwen 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com

๐Ÿ’กTip: De "WHERE-clausuleDe parameter "" beperkt het aantal rijen dat door de UPDATE-query wordt beรฏnvloed. Als je deze parameter weglaat, worden alle rijen in de tabel herschreven.

Veelgestelde vragen

MySQL Retourneert een telling van "Overeenkomende rijen" en een telling van "Gewijzigde rijen". "Overeenkomende rijen" geeft aan hoeveel rijen de WHERE-clausule heeft geselecteerd, terwijl "Gewijzigde rijen" rijen uitsluit waarvan de nieuwe waarde identiek was aan de oude.

Ja. Combineer UPDATE met een AANMELDEN en verwijs naar de tweede tabel in de SET-clausule. De joinvoorwaarde bepaalt welke bronrij de nieuwe waarde levert voor elke doelrij.

Plaats het in een transactie. START TRANSACTION gevolgd door ROLLBACK herstelt de oude waarden. Zodra de wijziging is doorgevoerd, kan alleen een back-up de vorige gegevens herstellen, dus test de WHERE-clausule eerst met SELECT.

Ja. AI-assistenten zetten een beschreven wijziging om in UPDATE-syntaxis en stellen de WHERE-clausule voor. Geef het model je tabelstructuur en controleer vervolgens het filter met een SELECT-statement voordat je de gegenereerde query uitvoert.

Een AI-model kan uw live rijen niet zien, dus een iets onjuiste WHERE-clausule kan duizenden records ongemerkt herschrijven. RevBekijk elke gegenereerde instructie, voer deze uit op een testkopie en bewaar een actuele back-up.

Vat dit bericht samen met: