MySQL Update Row i tabellen

MySQL Update Row i tabellen
Oppdatering av verdier i en database er en vanlig oppgave, spesielt ved å endre data kontinuerlig. For denne opplæringen skal vi se på MySQL -oppdateringsuttalelsen som lar deg endre rader i en tabell.

Før vi begynner, antar vi at du har installert en MySQL -server på systemet ditt og har tilgang til en bestemt database. Hvis du trenger en eksempeldatabase å jobbe med, bør du vurdere ressursen som er gitt nedenfor:

https: // dev.mysql.com/doc/indeks-annet.html

I ressursen over vil du få et glidelåsarkiv av eksempeldatabasen du kan bruke til å teste konseptene i denne opplæringen.

Grunnleggende bruk

Den grunnleggende bruken av MySQL -oppdateringsuttalelsen er enkel, og du kan bruke den til å oppdatere kolonnene til de eksisterende radene i en spesifisert tabell med settverdiene.

Den grunnleggende syntaks for oppdateringsuttalelsen er:

Oppdatering [low_priority] [ignorere] tabell_navn
Sett Assignment_List
[Hvor tilstand];

Vi starter med å ringe oppdateringsuttalelsen etterfulgt av modifikatorer (fortsett å lese for å lære mer) og tabellnavnet.

I den andre uttalelsen setter vi kolonnen vi ønsker å oppdatere og verdiene vi trenger å endre. Du kan oppdatere flere kolonner ved å spesifisere oppgavene i form av et uttrykk eller komma-separerte verdier.

For å unngå å oppdatere alle radene i hele tabellen, spesifiserer vi en betingelse som begrenser oppdateringskommandoen. For eksempel kan dette være der ID = 2 osv. Vi bruker hvor uttalelsen etterfulgt av tilstanden som vist i den tredje linjen.

Du kan også angi en ordre etter klausul som tvinger MySQL til å oppdatere radene i den angitte ordren.

Modifiserere

MySQL-oppdateringsuttalelsen støtter to modifikatorer-som sett i eksemplet ovenfor. Disse er:

  1. LAV PRIORITET: Denne modifisereren forteller oppdateringsspørsmålet om å utsette operasjonen til ingen tilkoblinger leser fra den spesifiserte tabellen.
  2. OVERSE: Ignorer -modifisereren lar oppdateringsspørsmålet fortsette å oppdatere selv om det oppstår en feil.

MySQL -oppdateringssaker

La oss nå vurdere en illustrasjon av oppdateringsverdier ved hjelp av oppdateringskommandoen. Vi starter med en enkel der vi oppdaterer en enkelt kolonne.

Oppdater enkeltkolonne

Hvis du bruker Sakila -eksempeldatabasen, bør du vurdere filmtabellen med prøveinformasjon som vist nedenfor:

Desc film;
+----------------------+
| Felt |
+----------------------+
| FILM_ID |
| tittel |
| beskrivelse |
| Release_year |
| språk_id |
| original_language_id |
| Rental_duration |
| Rental_rate |
| lengde |
| erstatning_cost |
| Rating |
| SPESIAL_FECTURES |
| last_update |
+----------------------+

Hvis vi spør om dataene som er lagret i den tabellen som vist i spørringen nedenfor (Sakila -databasen inneholder mye informasjon; sørg for å begrense når du spør noen tabeller.)

Velg * fra Sakila.Filmgrense 5;

Du vil få prøveinformasjon som vist i tabellen nedenfor:

MERK: Det er bra å ha en visuell referanse til hvordan databasen din er organisert for å sikre at ingen feil oppstår eller for å utføre ugyldige spørsmål.

Nå som vi vet hvordan databasen ser ut, kan vi begynne å oppdatere en bestemt kolonne. I dette eksemplet, la oss oppdatere vurderingen av Film Academy Dinosaur til en verdi “PG-13.”

Tenk på spørringen som er vist nedenfor:

Oppdater Sakila.film
Sett rating = ”PG-13”
HVOR
film_id = 1;

Når spørringen ovenfor er utført, er verdien av rangeringene for filmen der ID = 1 satt til PG-13.

Du kan bekrefte å bruke spørringen som er vist nedenfor:

mysql> velg rating fra Sakila.Filmgrense 3;
+--------+
| Rating |
+--------+
| PG-13 |
| G |
| NC-17 |
+--------+
3 rader i settet (0.00 sek)

Oppdater flere kolonner

Oppdatering av flere kolonner ligner på å oppdatere en enkelt kommando, men du spesifiserer flere verdier i den angitte leddet som vist i spørringen nedenfor:

Oppdater Sakila.Filmsettvurdering = "PG-13", Rental_rate = 1.99 hvor film_id = 2;

I dette eksemplet oppdaterer vi de andre filmverdiene til vurderingen av PG-13 og hastigheten på 1.99.

Bekreft endringene har brukt vellykket:

mysql> velg Rental_rate, rating fra Sakila.Filmgrense 2;
+-------------+--------+
| Rental_rate | Rating |
+-------------+--------+
| 0.99 | PG-13 |
| 1.99 | PG-13 | <------------
+-------------+--------+
2 rader i settet (0.00 sek)

Som du kan se, kan du legge til flere kolonner ved å skille verdiene deres i komma.

Konklusjon

I denne opplæringen lærte du hvordan du bruker MySQL -oppdateringskommandoen for å endre verdier i en tabellkolonne.

Hvis du trenger mer erfaring med MySQL, bør du vurdere veiledningene våre gitt nedenfor:

https: // linuxhint.com/kategori/mysql-mariadb/