Tutoriale Web
Tutoriale CAD
Tutoriale Diverse
Php - MySql
|
|
Tutorial PHP
Baze de date 3!
Executarea comenzilor dintr-un fisier extern
Comenzile MySql pot fi scrise intr-un fisier text de exemplu si apoi incarcat in consola MySql folosind comanda SOURCE nume_fisier. In momentul executarii acestei comenzi se vor executa in consola MySql toate instructiunile din fisier ca si cum le-am fi scris pe fiecare in parte in consola.
Exemplu
CREATE DATABASE angajati;
USE angajati;
CREATE TABLE persoane
(id INT AUTO_INCREMENT PRIMARY KEY, nume TEXT, salariu INT);
INSERT INTO persoane (nume, salariu) VALUES ('Bogdan', 1000);
SELECT * FROM persoane;
Se salveaza acest cod intr-un fisier in partitia C de exemplu, iar apoi se executa in consola comanda SOURCE c:\fisier.txt;. Veti observa cat de rapid sunt executate comenzile fap ce constituie inca un avantaj in folosirea bazelor de date.
Adaugarea mai multor inregistrari in aceeasi comanda
Daca dorim sa adaugam intr-un tabel mai multe inregistrari fara sa scriem comanda INSERT la fiecare inregistrare, putem sa le daugam pe toate sub o singura comanda insa separate prin virgula.
Exemplu
INSERT INTO persoane (nume, salariu) VALUES
('Bogdan', 1000),
('Gigel', 2000),
('Marius', 1050),
('Ionut', 3000);
Acest lucru ne scuteste de multa munca mai ales cand vrem sa adaugam un numar mare de inregistrari in tabel.
SELECT din mai multe tabele in acelasi timp
Putem obtine datele din doua tabele folosind aceeasi interogare. Sa presupunem ca avem urmatoarele trei tabele:
persoane
| id | nume | prenume |
|---|
| 1 | Nicu | Bogdan |
| 2 | Petrescu | Gigel |
| 3 | Ionescu | Marius |
|
date
| id | varsta | salariu |
|---|
| 1 | 21 | 3000 |
| 2 | 31 | 2500 |
| 3 | 41 | 4000 |
|
alte_date
| id | concediat | cazier |
|---|
| 1 | nu | da |
| 2 | nu | da |
| 3 | da | nu |
|
Pentru fiecare persoana dorim sa aflam ce varsta are si daca are cazier. Vom proceda asa:
SELECT persoane.nume, date.varsta, alte_date.cazier FROM persoane,
date, alte_date where persoane.id = date.id AND date.id = alte_date.id;
Acest cod va afisa
| nume | varsta | cazier |
|---|
| Nicu | 21 | da |
| Petrescu | 31 | da |
| Ionescu | 41 | nu |
Metoda 2
SELECT nume, varsta, cazier FROM persoane, date, alte_date WHERE
persoane.id = date.id AND date.id = alte_date.id;
Acest cod va afisa acelasi tabel ca si cel de mai sus
Doua SELECT intr-o interogare
Se pot executa doua sau chiar mai multe comenzi SELECT in aceeasi interogare dupa cum urmeaza:
SELECT prenume FROM persoane WHERE id = (SELECT id FROM date WHERE varsta = 21);
Acest cod va afisa
Operatori folositi cu WHERE
Tabelul urmator prezinta operatorii care se folosesc cel mai des cu conditia WHERE
| Operator | semnificatie |
| = | egal cu |
| < | mai mic decat |
| > | mai mare decat |
| <= | mai mic sau egal |
| >= | mai mare sau egal |
| != | diferit de |
| IS NOT NULL | are valoare |
| IS NULL | nu are valoare |
| BETWEEN min AND max | cuprins intre min si max |
| NOT BETWEEN min AND max | nu este intre min si max |
| IN(val1, val2, val3) | se gaseste in lista de valori |
| OR | una din conditii este adevarata |
| AND | amandoua conditiile sunt adevarate |
| LIKE | este asemenea cu |
Spre deosebire de = (egal) care verifica daca valorile sunt identice, LIKE poate verifica daca valoarea este egala la inceput, la jumatate sau la sfarsit cu o alta valoare.
Exemple
SELECT * FROM tabel where nume LIKE 'Bog%';
Acest exemplu extrage toate inregistrarile in care campul "nume" incepe cu "Bog".
SELECT * FROM tabel where nume LIKE '%dan';
Acest exemplu extrage toate inregistrarile in care campul "nume" se termina cu "dan".
SELECT * FROM tabel where nume LIKE '%gd%';
Acest exemplu extrage toate inregistrarile in care campul "nume" contine pe undeva valoarea "gd".
Pentru lista completa cu functii MySql accesati Functii Mysql
Baze de date SQL 2<< Anterior ------- Urmator >>PHP cu MySql
|
|
limbajul tau preferat
|
Cele mai cautate cuvinte
mozilla, baza, mysql, baza, mysql, baza, mysql, baza, mysql, baza, mysql, baza, cuprins, insert, insert, insert, insert, mysql, mysql, mysql, mysql, mysql, mysql, mysql, mysql, mysql, mysql, mysql, baza, baza,
| |