SQL de învățare
Prin actualizarea datelor din baza de date se înțeleg schimbă valorile din intrările de masă existente. Este posibil ca schimbarea valorilor câmpului într-un grup de rânduri (chiar toate rândurile din tabel) și corectarea valorilor un singur pas rând.
Cu SQL, modificați intrarea în tabelul bazei de date, puteți utiliza comanda UPDATE. Chiar minim o actualizare echipă este după cum urmează:
UPDATE tabel SET câmp = valoare
Aici, UPDATE - comandă care indică faptul că cererea de actualizare a datelor;
tabel - numele tabelului care va fi o schimbare;
SET - comandă, care specifică un câmp de virgulă le atribuie valori;
câmp - câmp al tabelului, care va fi modificată;
Valoarea - noua valoare care urmează să fie introduse în domeniu.
De exemplu, pentru a selecta un câmp în toate rândurile din valoarea de masă egală cu zero, este posibil de a efectua această interogare:
UPDATE bunuri SET preț = 0
În acest caz, câmpul preț în absolut toate rândurile existente din tabel va fi setat la 0.
Schimbarea o valoare
Modificarea valorii tuturor câmpurilor din tabel trebuie să fie extrem de rare. Cel mai adesea este necesar să modificați valoarea unei anumite înregistrări. În acest scop, în conformitate cu finalizarea UPDATE de comandă, unde va fi adăugată directivă, ceea ce indică condiția care determină modul în care este necesar să se efectueze o actualizare linie de operare.
Num
(Număr articol)
De exemplu, trebuie să actualizați valoarea bunurilor de la cunoscut la noi cu num valoarea sa. Pentru a face acest lucru, executați următoarea interogare:
mărfuri UPDATE SET preț = 150 WHERE num = 2
Acum, operația de schimbare câmpurile vor fi selectate șir care satisface condiția num = 2. Un astfel de rând într-un tabel. Acest preț de stoc și va fi schimbat la 150. Rezultatul este un tabel cu prețul modificat al mărfurilor.
Efectuarea de modificări la câteva linii cu condiția de selecție
Dacă vă amintiți diversitatea termeni în interogare. vă puteți imagina cât de mult poate fi variată probă. Prin urmare, cererile de actualizări pot fi efectuate fie cu o singură linie sau un grup de linii sau cu toate liniile din tabel. Totul depinde de sarcina în fața dumneavoastră, precum și cu unele rânduri de masă au nevoie pentru a efectua o operație de actualizare.
De exemplu, vrem să reducă la jumătate prețul tuturor mărfurilor, care sunt acum în valoare între 100 și mai mult. Solicitare:
mărfuri UPDATE SET preț = preț / 2, unde prețul> = 100
Clauza WHERE aici conține o regulă care va fi selectat numai produse cu un preț egal sau mai mare de 100, dar aceste mărfuri, al căror preț este mai mic de 100, cererea nu va fi afectată.
preț = preț / 2 - o formulă care va calcula noul preț al mărfurilor. Noul preț va fi înregistrat egal cu prețul vechi împărțit la doi.
Ca urmare a acestei cereri va fi un tabel cu înregistrările modificate:
Num
(Număr articol)
Valorile actualizare în mai multe rânduri domenii
Dacă este necesar să se actualizeze mai multe câmpuri toate câmpurile cu valorile specificate după directiva SET, separate prin virgulă. De exemplu, trebuie să modificați numele și prețul bunurilor cu codul 2 la „fier“, costa 300:
bunuri UPDATE SET title = "de fier". preț = 300 WHERE num = 2
O astfel de solicitare a fiecărui domeniu relevant în rândul desemnează valoarea sa. O condiție va indica ce anumită linie va fi schimbări executate.
Cele de mai sus sunt principalele tipuri de operațiuni de actualizare. Pe baza lor cererile de cele mai multe sarcini de modificare a datelor în dezvoltarea unei aplicații SQL.
Un alt material din această secțiune
Buna ziua!
Este posibil să facă acest lucru:
bunuri UPDATE SET titlu, preț = 100 unde num = 2
Asta este, două câmpuri pentru a atribui o singură valoare?
Bună ziua, Dmitry.
Nu, este necesar să se facă două misiuni separate prin virgulă. În plus, în aceste domenii vor avea diferite tipuri de date, astfel încât sunt necesare ghilimele pentru titlu.
Buna ziua!
Este posibil de a interzice editarea anumitor domenii?
De exemplu, datele numai cu un număr de ordine și titlul acest lucru nu se poate face trebuie să fie actualizate.
Bună dimineața, Anastasia.
Cu o astfel de problemă, sincer, eu nu vin peste. Baza de date MySQL este posibil accesul concurent la utilizatorii bazei de date. Puteți încerca. Poate că ar fi mai ușor de a face câmpurile de interdicție de editare în aplicația Web, mai degrabă decât la nivelul bazei de date.
Bine ai venit!
Cum pot face o cerere pentru a modifica datele din tabele diferite?
Bună ziua, Tatiana.
Acesta ar trebui să folosească cereri separate pentru fiecare tabel.