Curs Php-mysql

Dupa ce ati adaugat randuri in tabelul MySQL, puteti sa modificati datele inregistrate, folosind comanda UPDATE.
Instructiunea UPDATE este folosita pentru a modifica sau actualiza informatiile existente intr-un tabel.

  - Sintaxa:
UPDATE nume_tabel
 SET coloana1=valoare, coloana2=valoare2, ...
 WHERE o_coloana=o_valoare
- Clauza WHERE este importanta intr-o interogare UPDATE , specifica serverului MySQL care inregistrare sau inregistrari trebuie actualizate. Daca omiteti clauza WHERE, vor fi afectate toate randurile!
- Comanda UPDATE este trimisa la serverul MySQL cu metoda query() a obiectului mysqli.

  - Exemplu
In lectiile anterioare a fost creat un tabel numita "users" si am adaugat cateva randuri in el. Asa arata primele doua inregistrari.
idnamepasswordemailreg_date
1 Marius faith name@domain.net 2011-03-24 09:51:46
2 MarPlo peace user@domain.com 2011-03-24 10:10:27

In acest exemplu vom modifica adresa de email pentru utilizatorul cu "name" MarPlo.
<?php
// conecteaza la baza de date "tests" 
$conn = new mysqli('localhost', 'root', 'pass', 'tests');

// verifica conexiunea
if (mysqli_connect_errno()) {
  exit('Connect failed: '. mysqli_connect_error());
}

// interogare sql UPDATE 
$sql = "UPDATE `users` SET `email`='new_mail@domain.net' WHERE `name`='MarPlo' AND `id`=2";

// executa interogarea si verifica pentru erori
if (!$conn->query($sql)) {
  echo 'Error: '. $conn->error;
}

$conn->close();
?>
Dupa cum observati, clauza WHERE pune doua conditii cu operatorul "AND" (WHERE `name`='MarPlo' AND `id`=2), ii spune serverului MySQL sa actualizeze numai randurile care au "name='MarPlo'" si "id=2". Setand aceste doua conditii, putem fi siguri ca numai acel rand va fi modificat, nu un alt rand cu acelasi nume.
De asemenea, puteti sa aplicati optiunea LIMIT pentru a seta cate randuri sa fie actualizate.
Exemplu:
                $sql = "UPDATE `users` SET `email`='new_mail@domain.net' WHERE `name`='MarPlo' AND `id`=2 LIMIT 1";

Dupa actualizare, primele doua randuri din tabelul "users" vor arata asa:
idnamepasswordemailreg_date
1 Marius faith name@domain.net 2011-03-24 09:51:46
2 MarPlo peace new_mail@domain.com 2011-03-27 10:20:58
- Deoarece "reg_date" este o coloana de tip TIMESTAMP (cu atribute:   on update CURRENT_TIMESTAMP ), serverul MySQL a modificat si valuarea ei, actualizand-o cu data si ora curente (din momentul efectuarii UPDATE).
Daca vreti ca o instructiune UPDATE sa nu schimbe valoare coloanei TIMESTAMP, cand creati tabelul trebuie sa nu adaugati atributul "on update" , ci doar DEFAULT ( `coloana_data` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ).

- Daca executati o interogare UPDATE care nu modifica nici o valoare (deoarece conditia WHERE nu se potriveste nici unui rand), nu va returna vreo eroare si nici nu va afecta vreun rand.
- Este indicat sa nu schimbati valoarea unei coloane de tip PRIMARY KEY (in exemplul de mai sus, coloana "id").

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Clic pe tag-ul care creaza o lista ordonata numeric
<ul> <tr> <ol>
<ol>
  <li>List-1</li>
  <li>List-2</li>
</ol>
Care selector reprezinta ID-ul unui element in CSS
.nume #nume nume
#id {
  color: #0110fb;
}
Ce cod creaza un obiect in JavaScript?
{} [] new Date()
var obj = {"site": "CoursesWeb.net", "pr": 5};
alert(obj.site);
Indicati instructiunea prin care se verifica daca o conditie este True sau False
else if() switch()
$var = 8;
if($var == 8) echo $var;
Indicati timpul Prezent pentru verbul "to be" (a fi).
be were is
Now, it is here.
- Acum este aici.
Care este conjugarea la timpul prezent al verbului "divertirse" (a se distra) la forma "yo"?
te diviertas me divierto se divierta
Yo me divierto.
- Eu ma distrez.

S H A R E

Sharing Twitter

Last accessed pages

  1. Viitor perfect (4349)
  2. Download carti electronice si programe pentru Limba Engleza (44426)
  3. Trecutul simplu - Exercitii si teste incepatori (26538)
  4. Cursuri limba engleza gratuite si lectii online (66450)
  5. Anotimpurile si vremea (746)

Popular pages this month

  1. Download carti electronice si programe pentru Limba Engleza (2)
  2. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (1)
  3. Cursuri limba engleza gratuite si lectii online (1)
  4. Cursuri Limba Franceza (1)
  5. Cerc si Oval cu CSS (1)