Documente Academic
Documente Profesional
Documente Cultură
CURSE(IdCursa,AeroportPlecare,AeroportSosire,Data,NrLocuriLibere)
PASAGERI(IdPasager,Nume,Prenume,Adresa,NrCreditCard)
REZERVARI(IdRezervare,IdPasager,IdCursa)
FACTURI(IdFactura,IdPasager,DataFacturarii,Pret)
REZERVARI (1,1,1)
CLIENTI(IdClient,Nume,Prenume,DataNasterii,Adresa)
CONTURI(IdCont,IdClient,Tip,DataCreare, DataExpirare)
TRANSFERURI(IdTransfer,IdContExtragere, IdContDepunere,Data,Suma)
CLIENTI(IdClient,Nume,Prenume,DataNasterii, Adresa,NrCreditCard)
PRODUSE(IdProdus,Categorie,Descriere, PretUnitar,Stoc)
COS(IdCos,IdClient,IdProdus,Data, NumarBucati)
1
Probleme propuse
In tabelele de mai jos, atributele ce constituie cheia primară a tabelei sunt subliniate.
1. Fie tabela PROIECTE_ANGAJATI de mai jos. Coloanele ID_PRJ, ID_ANG, SAL_ORA şi ORE sunt de tip numeric, celelalte
de tip text.
PROIECTE_ANGAJATI
Se va proiecta tabela PROIECTE_ANGAJATI. Se vor defini condiţiile ORE >= 0, SAL_ORA>=20, ID_PRJ, 100 <= ID_PRJ <=
999, 1000 <= ID_ANG <= 9999. Se vor defini măşti pentru introducerea câmpurilor ID_PRJ şi ID_ANG. Numele
departamentelor se vor introduce cu o casetă combinată (Combo Box).
2. Fie tabela ANGAJATI de mai jos. Coloanele ID şi SALARIU sunt de tip numeric, celelalte coloane sunt de tip text.
ANGAJATI
Se va proiecta tabela ANGAJATI. Se vor defini condiţiile de validare ID >= 100, SALARIU >= 600.
2
Se vor crea formulare de interogare pentru următoarele cereri:
3. Fie tabela SITUATIE_FINANCIARA de mai jos cu datele contabile ale unei interprinderi. Toate coloanele sunt de tip
numeric.
SITUATIE_FINANCIARA
AN VENITURI CHELTUIELI
2001 420 370
2002 470 410
2003 550 500
2004 620 548
2005 705 590
2006 690 620
Fie tabela DATE_CONTABILE de mai jos cu datele contabile ale aceeaşi intreprinderi pe următorii trei ani.
DATE_CONTABILE
AN VENITURI CHELTUIELI
2007 712 670
2008 722 690
2009 695 690
Să se creeze o interogare care să calculeze reuniunea celor două tabele. Se vor proiecta cele două tabele şi se vor defini
condiţiile de validare VENITURI > 0, CHELTUIELI > 0.
Câmpurile NUME, PRENUME şi NUMAR_TELEFON sunt de tip text. Câmpurile VALOARE şi LUNA sunt numerice. Se va
proiecta tabela FACTURA_TELEFONICA. Se vor defini regulile de validare VALOARE > 0, LUNA cuprinsă între 1 şi 12,
câmpurile NUME şi PRENUME nenule. In câmpul NUMAR_TELEFON numerele încep cu prefixul 0251. Se vor introduce
reguli de validare şi mesaje de eroare pentru fiecare câmp. Se va crea o mască pentru numerele de telefon de forma
(0000) 000-000
să se selecteze toate facturile telefonice cuprinse între două luni ce vor fi parametri.
3
Cum utilizez instrucţiunea SELECT în interogarea unei baze de date MySQL din Access ?
1SELECT
2 lista_de_coloane
3 FROM
4 lista_de_tabele
[WHERE criterii]
5
Pentru acest exemplu, vom studia câteva interogări simple.
1. Vreau să afişez toţi angajaţii cu profesia “doctor“:
1-- Doctori
2select
3 *
4from
5 tblangajati
where
6 `Profesie` = 'doctor';
7
Cum se traduce ?
- selectează toţi angajaţii din tabelul tblangajaţi, unde profesia lor este cea de doctor.
2. Vreau să afişez poliţele mai mari de 600, dar să îmi afişeze doar anumite câmpuri.
1-- Asigurari cu anumite campuri >=600
2select
3 Nr_Inmatriculare, Suma_Incasata, Firma
4from
5 tblasigurari
where
6 `suma_incasata` >= 600;
7
Cum se traduce ?
- selectează coloanele Nr_Inmatriculare, Suma_Incasata, Firma din tabelul tblasigurari, acolo unde înregistrările
din coloana Suma_Incasata sunt mai mari sau egale cu 600.
3. Vreau să afişez toate înregistrările ce conţin profesia doctor sau care au salariu peste o anumită valoare.
1-- Doctori sau salariu mare
2Select
3 Angajat, Profesie, Salariul
4from
5 tblangajati
WHERE
6 `Profesie` = 'doctor' or `Salariul` >= 2500;
7
Cum se traduce ?
- selectează coloanele Angajat, Profesie, Salariul din tabelul tblangajati acolo unde profesia este cea de doctor
sau salariu este mai mare sau egal cu 2500.
Se poate observa că am folosit operatorul OR pentru a afişa atât angajaţii cu profesia doctor, dar şi pe cei cu
salariul >=2500.
Dacă aş fi folosit operatorul AND, interogarea mi-ar fi afişat doar angajaţii cu profesia doctor şi cu salariul >=2500.
Read more: http://www.tutorialeoffice.ro/ms-office/access-tips/cum-utilizez-instructiunea-select-in-interogarea-
unei-baze-de-date-mysql-din-access/#ixzz3OYI0kcJv
4
Configurarea scriptului phpMyAdmin
Lucrul cu baza de date MySQL
Dupa ce ati descarcat de pe internet ultima versiune de phpMyAdmin, fiti siguri ca ati dezarhivat si ati
pus folderul in directorul www.
Intrati apoi in folderul phpMyAdmin si deschideti fisierul config.inc.php. Cautati si editati liniile 84,
85 si 86 care arata cam asa:
$cfg['Servers'][$i]['auth_type'] = 'config'; // Authentication method (config, http or cookie based)?
$cfg['Servers'][$i]['user'] = 'root'; // MySQL user
$cfg['Servers'][$i]['password'] = ‘’; // MySQL password (only needed
Modificati modul de autentificare si alegeti in loc de config, cookie astfel incat linia sa fie:
$cfg['Servers'][$i]['auth_type'] = 'cookie';
5
apoi setati o parola secreta pentru modul de autentificare. Cautati linia $cfg['blowfish_secret'] = ''; si
setati in interiorul ei un cuvant, de exemplu $cfg['blowfish_secret'] = 'baubau';
Dupa ce ati facut aceste modificari, este recomandat ca in locul user-ului root, sa creati un altul cu mai
putine drepturi. Intrati in phpMyAdmin ca root si creati un nou utilizator apoi setati-l in config.inc.php.
Accesati apoi http://localhost/phpmyadmin si observati ca va cere un user si o parola pentru a va
autentifica.
Apoi in dupa ce s-a incarcat urmatoarea pagina, gasiti unde apare ”Schimbare parola” si bifati
”Parola”, apoi tastati parola dorita de dumneavoastra si in prima, si in a-II-a casuta, dupa care apasati
pe butonul „Executa”.
De acum aveti setata o parola la baza de date MySQL, urmatorul pas este sa ne intoarcem la fisierul
config.inc.php si sa ii setam parola in campul $cfg['Servers'][$i]['password'] = ‘’; si anume
$cfg['Servers'][$i]['password'] = ‘parolamysql’;
6
Fie baza de date cu numele “tutorial” cu tabela “formular”.
In a-II-a poza, apar inregistrarile (coloanele) din cadrul tabelei formular.
Un rand din baza de date se alcatuieste din:
1) Un nume, dupa cum vedeti in coloana camp. Acest nume nu poate contine spatiu.
2) O valoare tip care difera coloana la coloana.
Cele mai folosite tipuri sunt:
Tipuri numerice:
INT – Stocare octeti 4
BIGINT – 64 biti
Tipuri de sir:
CHAR – Interval 1-255 caractere
VARCHAR – Interval 1-255 caractere
Tipuri de text:
TEXT – Lungime maxima de caractere 65.535
LONGTEXT – Lungime maxima de caractere 4.294.967.295
Binenteles, se pot folosi si alte tipuri pentru datele introduse in baza de date, insa o sa lucram numai cu
acestea.
Scrieti numele bazei de date pe care doriti sa o creati,dupa care apasati butonul “Creaza”.
Sa luam ca exemplu, baza de date cu numele tutorial.
Dupa ce ati creat baza de date cu numele tutorial, veti observa ca in partea stanga apare numele
acesteia, iar in mijloc este scris textul “Nu s-a gasit nici un tabel in baza de date.”.
Pentru a adauga un tabel in baza noastra de date, trebuie sa complectam campul “Creaza tabela noua in
baza de date tutorial:”.
Nume: formular
Campuri: 4
7
Apasam butonul “Executa”
Intorcandu-ne putin la cunostintele pe care le-am acumulat cu o pagina mai sus, vom observa ca apar
campurile: “Camp”, “Tip”, “Lungime”. . .
O prima adaugare in orice baza de date, este bine sa fie un camp cu numele id, iar ca tip sa fie INT, si o
setare speciala pentru aceasta prima linie din tabela noastra, este alegerea valorii auto_increment din
categoria “Extra”, si apoi trebuie sa bifati optiunea primar .
Dupa care adaugati pe rand in coloana “Camp” urmatoarele: nume , prenume , varsta.
Ca Tip pentru aceste 3 intrari, alegeti CHAR, apoi in coloana “Lungime/Setare” adaugati o valoare
numerica,
adica numarul de caractere maxime care sa poata intra in acel rand.
Exemplu: Pentru coloana camp cu valoarea “nume” o sa avem ca tip CHAR si lungime 30. Asta
inseamna ca putem introduce un text mai mic sau egal cu 30 caractere.
Dupa ce ati introdus datele precum am spus mai sus si am aratat in poze, apasati butonul “Salveaza”.
In urmatoarele 2 poze vedeti ca tabelul a fost creat, vi se arata comanda SQL, dupa care vi se listeaza
aceasta tabela.
8
Dupa ce ati creat baza de date cu numele tutorial si tabela cu numele formular, doriti sa adaugati
informatii in
aceasta tabela.
Sus in pagina aveti un meniu:
Completati campul “Valoare” cu datele pe care doriti sa le introduceti in formular pentru fiecare in
valorile
casutei “Camp”.
Si anume:
9
Nu complectati casuta id de dip INT deoarece aceasta este folosita pentru a adauga un numar UNIC
pentru
fiecare intrare din baza de date.
De exemplu, daca adaugati 2 intrari, numarul primei intrari va fi, 1 iar urmatoarei intrari va fi 2. Daca
stergeti
intrarea cu numarul 2 si adaugati o noua intrare, id-ul acesteia va fi 3 nu 2, deoarece valoarea campului
id de
tip INT nu se updateaza (in sensul ca se rearanjeaza numarul din dreptul fiecarei intrari) in momentul
in care
se sterge o intrare din tabela.
Dupa ce ati adaugat informatii in casuta “Valoare”, apasati butonul “Executa”.
Mai adaugati o intrare in acest tabel efectuand acelasi procedeu ca cel de mai sus si apasati din nou
butonul
navigare.
Apasati pe textul “nume” sau “prenume” sau “varsta” si observati ca listarea intrarilor se modifica in
ordinea
adaugarii lor in tabela. Sus observati sintaxa SQL
10
Listarea poate fi ASC (ascendenta), adica afisarea intrarilor pornind cu ultima intrare si sfarsind cu
prima
intrare, sau DESC (descendenta), adica afisarea intrarilor pornind cu prima intrare si sfarsind cu ultima.
Nota: Puteti adauga in continuare si alte tabele si coloane atatea cate aveti nevoie.
Pana acum am invatat cum sa lucram cu baza de date folosind phpMyAdmin. Inainte de a trece mai
departe va rog efectuati cateva teste adaugand/stergand baze de date, adaugand tabele, modificand…
Conectarea la MySQL
Conectarea la MySQL folosind PHP
In acest capitol vom invata cum sa ne conectam la o baza de date, cum sa citim informatii din ea, cum
sa le stergem/modificam sau cum sa adaugam noi informatii cu ajutorul scripturilor PHP.
Creati un folder in directorul radacina a serverului dumneavoastra apache (www) cu numele tutorial.
Creati un fisier cu numele config.php in care puneti urmatorul cod:
<?php
// Informatii baza de date
$AdresaBazaDate = "localhost";
$UtilizatorBazaDate = "root";
$ParolaBazaDate = "parola_mysql";
$NumeBazaDate = "tutorial";
$conexiune = mysql_connect($AdresaBazaDate,$UtilizatorBazaDate,$ParolaBazaDate)
or die("Nu ma pot conecta la MySQL!");
mysql_select_db($NumeBazaDate,$conexiune)
or die("Nu gasesc baza de date!");
?>
Acesta este fisierul de configurare cu care vom realiza conexiunea la baza noastra de date.
Modificati valoarea variabilei $ParolaBazaDate cu parola pe care ati setat-o dumneavoastra bazei de
date.
Variabila $AdresaBazaDate este definita cu valoarea localhost deoarece aceasta este adresa serverului.
(Adica, serverul Apache+PHP este instalat pe acelasi calculator ca si pachetul MySQL)
Variabila $UtilizatorBazaDate este definita cu valoarea root, acesta fiind utilizatorul cu toate drepturile
de acces asupra bazei de date, administratorul.
Variabila $NumeBazaDate este definita cu valoarea tutorial, aceasta fiind numele bazei de date asupra
careia lucram.
Salvati, si inchideti fisierul.
11