Documente Academic
Documente Profesional
Documente Cultură
CUPRINS
Programare Web
Programare Web
Programare Web
Programare Web
Programare Web
Programare Web
Programare Web
Programare Web
mysql>
->
->
respectiv
mysql>
->
->
->
->
Programare Web
Programare Web
|
1 |
+----------+
1 row in set (0.00 sec)
De asemenea se pot folosi i clauze suplimentare. Spre
exemplu, n comanda urmtoare, funcia LEFT va permite
afiarea unei coloane suplimentare obinut pe baza cmpului
(coloanei) nume, trunchiat la primele 2 caractere din stnga:
mysql> SELECT id, nume, LEFT(nume,2) FROM tabel1;
returnnd:
+----+------+--------------+
| id | nume | left(nume,2) |
+----+------+--------------+
| 1 | ION | IO
|
| 2 | DAN | DA
|
| 3 | IOAN | IO
|
+----+------+--------------+
3 rows in set (0.11 sec)
Utilizarea funciei LIKE i a caracterului special % (care
nlocuiete un ir de caractere oarecare) n comanda SELECT
are ca efect o interogare cu cutare aproximativ. Astfel
comanda:
mysql> SELECT nume FROM tabel1 WHERE nume
-> LIKE "%io%";
returneaz acele linii (nume) pentru care cmpul nume
conine irul io:
+------+
| nume |
+------+
| ION |
| IOAN |
+------+
2 rows in set (0.00 sec)
Evident c pot fi utilizate i condiii multiple, folosind
operatorii logici (AND n cazul de fa):
mysql> SELECT id, nume FROM tabel1 WHERE nume
-> LIKE "io%" AND data>"2002-04-02";
avnd ca rezultat:
+----+------+
| id | nume |
+----+------+
11
Programare Web
| 1 | ION |
| 3 | IOAN |
+----+------+
2 rows in set (0.00 sec)
2.3.5 Modificarea datelor dintr-o tabel
Odat datele introduse ntr-o tabel a bazei de date,
apare foarte des necesitatea de modificare a acestora (fie din
motive de corectare a unor eventuale greeli, fie pentru o
simpl i necesar reactualizare a acestora). Comanda
UPDATE, folosit pentru modificarea datelor dintr-o tabel,
are urmtoarea sintax general:
mysql> UPDATE table_name SET
-> col_name = new_value, ...
-> WHERE conditions;
Spre exemplu, dac se dorete modificarea datei
corespunztoare articolului cu id-ul 1 din tabela tabel1, se
scrie o comand de genul:
mysql> UPDATE tabel1 SET data="1999-06-02"
-> WHERE id=1;
Sau, dac se dorete o reactualizare a datei pentru toate
articolele al cror nume care ncep cu irul de caractere io:
mysql> UPDATE tabel1 SET data="1999-06-01"
-> WHERE nume LIKE "io%";
Efectul modificrii efectuate este prezent pe ecran sub forma
unui mesaj de confirmare:
Query OK, 2 rows affected (0.11 sec)
Rows matched: 2 Changed: 2 Warnings: 0
O situaie special a constituie modificarea/ncrcarea
unui cmp de tip BLOB (cu o imagine spre exemplu). Spre
exemplificare, o astfel de operaie utilizeaz funcia
LOAD_FILE( cale\\nume_fisier_sursa), i se poate face cu
o comand de genul:
mysql> UPDATE tabel3 SET
-> imag=LOAD_FILE("c:\\dan.jpg") WHERE id=3;
S-a folosit funcia LOAD_FILE pentru precizarea
fiierului surs care va fi ncrcat n tabel (evident, tabela
avnd un cmp imag de tip BLOB). De remarcat dublarea
caracterelor \ care apar calea spre fiierul surs (pentru o
platform Windows).
12
Programare Web
Programare Web
column_1_name column_1_type
column_1_details,
column_2_name column_2_type
column_2_details,);
- adugarea ntr-o tabel:
INSERT INTO nume_tabela
(Nume_coloana1,Nume_coloana2,..)
VALUES (valoare1, valoare2,...);
sau
INSERT INTO nume_tabela SET
Nume_coloana1 = valoare1,Nume_coloana2 =
valoare2,...;
- vizualizarea datelor dintr-o tabel:
SELECT */lista_nume_cimpuri FROM tabela
[WHERE conditie];
- modificarea datelor dintr-o tabel:
UPDATE table_name SET col_name =
new_value, ...WHERE conditie;
- tergerea datelor dintr-o tabel:
DELETE FROM table_name [WHERE conditie];
NTREBRI
Care sunt cele 2 componente de baz ale MySQL-ului?
Scriei o secven de comenzi MySQL prin care s creai o
tabel cu 3 cmpuri. Tabela va fi populat cu trei nregistrri.
Modificai apoi ultima nregistrare i tergei nregistrarea a
doua. tergei n final tabela.
Care este comanda pentru tergere ntregului coninut al unei
tabele?
14