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
Care tag defineste zona de click intr-o harta creata dintr-o imagine?
<map> <img> <area>
<img src="image.jpg" usemap="#map1">
<map name="map1">
  <area shape="rect" coords="9, 120, 56, 149" href="#">
  <area shape="rect" coords="100, 200, 156, 249" href="#">
</map>
Ce proprietate CSS indica ce sa se intample cand continutul unui element depaseste dimensiunile lui?
display overflow position
#id {
  overflow: auto;
}
Clic pe evenimentul care este declansat cand mouse-ul e deasupra unui obiect.
onclick onmouseover onmouseout
document.getElementById("id").onmouseover = function(){
  document.write("Sa ai Viata Buna");
}
Indicati variabila PHP ce contine datele adaugate in adresa URL, dupa caracterul "?".
$_SESSION $_GET $_POST
if(isset($_GET["id"])) {
  echo $_GET["id"];
}
Clic pe pronumele reflexiv care e potrivit in propozitia: "Marc is the boy ... won the prize".
who which whoever
Marc is the boy who won the prize.
- Marc e baiatul care a castigat premiul.
Clic pe pronumele reflexiv care e potrivit in propozitia: "Voy a ver al pintor de ... les hablé ayer".
que quien cuyo
Voy a ver al pintor de quien les hablé ayer.
- Ma duc sa vad pictorul despre care ti-am vorbit ieri.
PHP MySQL - UPDATE

Last accessed pages

  1. Articolul din limba engleza - The article (66420)
  2. Prepozitii - Prepositions (32810)
  3. Proverbe, expresii si zicatori (22120)
  4. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (259729)
  5. Conditional IF in Limba Engleza - Fraze Conditionale (119798)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (619)
  2. Conditional IF in Limba Engleza - Fraze Conditionale (536)
  3. Gramatica limbii engleze - Prezentare Generala (439)
  4. Exercitii engleza - English Tests and exercises - Grammar (379)
  5. Coduri pt culori (362)