Sunteți pe pagina 1din 74

Mysql tipuri de date

Urmatorul table se doreste o referinta usor de folosit, catre tipurile uzuale de date

TIP DE DATA DESCRIERE LUNGIME DEFINITA?


TINYINT Intreg foarte mic. Nu este necesara; valoarea standard este 4.
Valori SIGNED (cu semn) de la -128 la 127.
Valori UNSIGNED (fara semn) de la 0 la 255.
SMALLINT Intreg mic. Nu este necesara; valoarea standard este 5.
Valori SIGNED (cu semn) de la -32768 la 32767.
Valori UNSIGNED (fara semn) de la 0 la 65535.
MEDIUMINT Intreg de lungime medie. Nu este necesara; valoarea standard este 9.
Valori SIGNED de la -8388608 la 8388607.
Valori UNSIGNED de la 0 la 16777215.
INT sau Intreg de lungime normala. Nu este necesara; valoarea standard este 11.
INTEGER Valori SIGNED de la -2147483648 la 2147483647.
Valori UNSIGNED de la 0 la 4294967295.
BIGINT Intreg mare. Nu este necesara; valoarea standard este 21.
Valori SIGNED de la -9223372036854775808 la
9223372036854775807.
Valori UNSIGNED de la 0 la 18446744073709551615.
FLOAT Numar in virgula mobila care nu poate fi fara semn. Nu este necesara; valoarea standard este 10,2
unde "2" este numarul de zecimale. Precizia
poate merge pana la 24 de zecimale.
REAL sau Numar in virgula mobila, de dubla precizie care nu poate fi Nu este necesara; valoarea standard este 16,4
DOUBLE fara semn. unde "4" este numarul de zecimale. Precizia
poate merge pana la 53 de zecimale.
NUMERIC sau Numar in virgula mobila care nu poate fi fara semn. Da; atat radacina (lungimea sirului de numele
DECIMAL inaintea virgulei) cat si precizia zecimala
trebuies indicate (i.e. "17,15").
DATE O data, in format YYYY-MM-DD , cuprinsa intre 1000-01-01 Nu.
si 9999-12-31.
DATETIME O combinatie de data si ora, in format YYYY-MM-DD Nu.
HH:MM:SS , cuprinsa intre 1000-01-01 00:00:00 si 9999-
12-31 23:59:59.
TIMESTAMP O semnatura de timp (timestamp), cuprinsa intre 1970-01- Nu este necesara; valoarea standard este 14.
01 00:00:00 si anul 2037. TIMESTAMP depinde de lungima Poate fi 6, 8, 12 sau 14.
specificata pentru camp.
 Daca lungimea este 14, TIMESTAMP este de
forma YYYYMMDDHHMMSS.
 Daca lungimea este 12, TIMESTAMP este de
forma YYMMDDHHMMSS.
 Daca lungimea este 8, TIMESTAMP este de forma
YYYYMMDD.

 Daca lungimea este 6, TIMESTAMP este de forma


YYMMDD.
TIME Ora, minutele si secundele in format HH:MM:SS. Nu.
YEAR Un an, in format de 2 sau 4 cifre. Nu este necesara; valoarea standard este 4.
 Daca lungimea este 2, YEAR poate fi de la 1970 la
2069 (de la 70 la 69).

 Daca lungimea este 4, YEAR poate fi de la 1901 la


2155.
CHAR Un sir de caractere cu lungime fixa intre 1 si 255 caractere; Nu este necesara; valoare standard este 1.
spatii sunt adaugate la stocare, la dreapa sirului, pana la
lungimea specifata.
VARCHAR Un sir de caractere de lungime variabila intre 1 si 255 Da.
caractere.
TINYBLOB sau O coloana BLOB sau TEXT cu o lungime de 255 caractere. Nu.
TINYTEXT
MEDIUMBLOB O coloana BLOB sau TEXT cu o lungime de 16777215 Nu.
sau caractere.
MEDIUMTEXT
LONGBLOB sau O coloana BLOB sau TEXT cu o lungime de 4294967295 Nu.
caractere.
LONGTEXT
BLOB sau O coloana BLOB sau TEXT cu o lungime de 65535 Nu.
TEXT caractere.

Comenzi Mysql

Pentru a ne putea face o baza de date trebuie ca serverul MySQL sa fie pornit. In continuare va trebui sa folosim o
aplicatie cu ajutorul careia sa comunicam cu serverul. Aplicatia se numeste mysql.exe si se gaseste in c:\mysql\
bin\. Pentru a rula, din prompul MSDOS scriem: "c:\mysql\bin\mysql.exe -p -u root" iar cand ni se cere parola
apasam ENTER (sau scriem parola daca am introdus la instalare vreuna). Daca serverul nu este pornit vom primi
mesajul de eroare "Can't connect to MySQL server on 'localhost'".

SHOW DATABASES; # afiseaza o lista cu numele bazelor de date existente


USE numele_bazei_de_date # alegerea bazei de date cu care lucram in continuare
SHOW TABLES; # afiseaza tabelele existente in baza curenta
SHOW COLUMNS; # afiseaza informatii despre coloanele unui tabel
CREATE DATABASE # creeaza o baza de date cu numele respectiv
numele_bazei;
CREATE TABLE tabel_unu # creeaza tabelul tabel_unu cu un camp numit 'camp_a' al carui tip este TEXT (vezi
(camp_a TEXT); Tipuri de date )
CREATE TABLE tabel_unu # creeaza tabelul 'tabel_unu' cu un camp numit 'camp_a' al carui tip este TEXT, un
(camp_a TEXT, camp_b INT, camp numit 'camp_b' in care datele de pe coloana respectiva vor fi numere intregi si
camp_c TINYINT); in campul 'camp_c' vor fi introduse doar numere intre -128 si 127
DROP TABLE tabel_unu; # sterge tabelul numit 'tabel_unu'
DROP DATABASE # sterge baza de date cu numele 'numele_bazei'
numele_bazei;
INSERT INTRO tabel (camp1, # introduce in tabelul cu numele 'tabel', in 'campul1' 'valoarea1', in
camp2, camp3) VALUES
(valoarea1, valoarea2, 'campul2' 'valoarea2' si in 'campul3' 'valoarea3'. Iata cum ar arata
valoarea3); in format tabelar:
campul1 campul2 campul3
valoarea1 valoarea2 valoarea3
INSERT INTRO tabel (camp1, # Se poate omite una din coloane, daca avem 5 coloane, dar vrem
camp2) VALUES (valoarea1,
valoarea2); sa introducem numai in 3, specificam campul si valoarea doar
pentru cele pe care le vrem, restul le ignoram.
campul1 campul2 campul3
valoarea1 valoarea2

INSERT INTRO tabel VALUES # o varianta simplificata care se poate aplica doar cand introducem valori in toate
(valoarea1, valoarea2, campurile tabelului (nu se poate omite)
valoarea3);
INSERT INTRO tabel VALUES # identica ca cea dinainte, doar ca in lipsa unei valori se pun ghilimele.
(valoarea1, valoarea2, ``);
SELECT * FROM tabel; # Afiseaza tot (*) ce exista in tabelul cu numele 'tabel'
SELECT campul1 FROM tabel; # afiseaza continutul campului 'campul1' din tabelul 'tabel'
SELECT campul1, campul2 # afiseaza continutul campurilor 'campul1' si 'campul2' din tabelul 'tabel'
FROM tabel
SELECT * FROM tabel WHERE # afiseaza campurile a caror continut este la fel cu 'valoare1'
campul1 = 'valoare1';
SELECT campul1, campul2 # cauta si afiseaza toate inregistrarile in care 'campul2' este asemanator cu 'valoare2'
FROM tabel WHERE campul2
LIKE 'valoare2';
SELECT campul1, campul2 # cauta si afiseaza toate inregistrarile in care 'campul2' incepe cu 'valoare2'
FROM tabel WHERE campul2
LIKE 'valoare2%';
SELECT campul1, campul2 # cauta si afiseaza toate inregistrarile in care 'campul2' se termina cu 'valoare2'
FROM tabel WHERE campul2
LIKE '%valoare2';
SELECT campul1, campul2 # cauta si afiseaza toate inregistrarile in care 'campul2' se aseamana cu 'valoare2'
FROM tabel WHERE campul2 oriunde in cadrul textului.
LIKE '%valoare2%';
SELECT * FROM tabel WHERE # afiseaza toate campurile care contin 'valoarea1' si se asemanana cu 'valoare2'
campul1=valoare1 AND
campul2 LIKE '%valoare2%';
SELECT campul1, campul2 # cauta si afiseaza toate campurile care difera de 'valoarea3'
FROM tabel WHERE campul1 !
= valoarea3;
SELECT campul1, campul2 # cauta si afiseaza toate campurile care nu incep cu 'valoare3'
FROM tabel WHERE campul2
NOT LIKE 'valoarea3%';
SELECT campul1 FROM tabel # afiseaza continutul campului 'campul1' in ordine crescatoare
ORDER BY campul1 ASC;
SELECT campul1, campul2 # afiseaza continutul campului 1 in ordine crescatoare si campul 2 in ordine
FROM tabel ORDER BY descrescatoare.
campul1 ASC, campul2 DESC;
SELECT count(*) FROM tabel; # afiseaza cate inregistrari sunt in total in tabel
SELECT count (*) FROM tabel # cate inregistrari sunt in tabel al caror 'camp1' este 'variabila1'
WHERE campul1=variabila1;
SELECT camp1 FROM tabel # afiseaza continutul campului 1 grupat dupa 'camp1' ascendent
GROUP BY camp1 ORDER BY
camp1 ASC;
SELECT * FROM tabel LIMIT # afiseaza din tabel incepand de la prima inregistrare inca 3.
0,3;
SELECT * FROM tabel LIMIT # afiseaza incepand de la inregistrarea 10 inca 5 inregistrari din tabel
10,5;
DELETE FROM tabel WHERE # sterge inregistrarea din tabel. Sintaxa este la fel ca la comanda SELECT.
conditii;
UPDATE tabel SET # pentru actuaizarea continutului unei inregistrari din tabel. Sintaxa este la fel ca la
coloana1='noua valoare a comanda SELECT.
coloanei 1', coloana2='noua
valoare a coloanei 2' WHERE
conditii;
ALTER TABLE tabel ADD dat # adaugare la tabelul existent a unei coloane numita 'dat' de tip text.
TEXT;
ALTER TABLE tabel CHANGE # redenumeste coloana numita 'dat' cu numele 'data'
dat data TEXT;
ALTER TABLE tabel CHANGE # modifica tipul coloanei 'data' din 'TEXT' in coloana de tip 'DATE'
data data DATE;
ALTER TABLE tabel ADD nr # adauga o coloana numita 'nr' dupa 'coloana1' in tabelul 'tabel'
MEDIUMINT UNSIGNED
AFTER coloana1;

Desi MySQL are suport pentru diacritice si setul de caractere 8859-2, este preferabil sa nu folositi diacritice in
numele bazelor de date, tabelelor sau campurilor. De asemenea, nu puteti folosi ca nume de tabel sau de camp
cuvinte rezervate (nume de functii, tipuri de caractere din MySQL precum create, drop sau column). Se pot folosi
nume de tabele care contin spatii dar in practica trebuie sa incadrati numele intre back-ticks ` (semnul ` il gasiti
pe tasta aflata imediat sub Escape si inainte de 1).
Exemplu:
CREATE TABLE `tabel al carui nume are spatii` (`camp 1`, TEXT);
SHOW COLUMNS FROM `tabel al carui nume are spatii`;

Semnul * este definit in MySQL ca insemnand tot/toate.

Semnul % este folosit in interogarile MySQL daca vrem sa gasim cuvantul oriunde in carul textului. Mai exact:
%cuvant_cautat - daca vrem sa afiseze toate cuvintele care se termina cu 'cuvantul_cautat' (poate fi si cateva
litere)
cuvant_cautat% - afiseaza toate cuvintele care incep cu 'cuvantul_cautat'
%cuvant_cautat% - afiseaza toate cuvintele care contin 'cuvantul_cautat' oriunde in text.

Putem afla cate inregistrari sunt pentru un criteriu de selectie cu ajutorul lui count(). Putem afla astfel cate
inregistrari sunt in total in tabel sau cate inregistrari sunt in tabel al caror camp este cel cautat...
Cu ajutorul instructiunii GROUP BY putem "grupa" rezultatele astfel incat sa nu vedem duplicatele si sa vedem
doar valorile unice. Pentru a limita numarul de rezultate folosim instructiunea LIMIT. Daca avem 10000 de
inregistrari si nu dorim sa vedem decat primele 3, folosim LIMIT 0,3 (adica de la prima inrgistrare afiseaza 3
inregistrari) sau LIMIT 10,5 (afiseaza incepand de la inregistrarea 10 inca 5 inregistrari).

Pentru stergerea inregistrarilor dintr-un tabel se foloseste comanda DELETE. Pentru stergerea unui tabel sau a
unei baze de date comanda este DROP.

Comanda UPDATE se foloseste cand vrem sa modificam continutul unei inregistrari fara a o sterge.

Daca dorim sa schimbam structura unui tabel existent sau sa adaugam alte coloane folosim comanda ALTER
TABLE.

INDECSI
Cel mai folosit tip de index este id-ul. Id-ul este un numar unic de identificare pentru un element distinct (un rand)
al unui tabel. Un exemplu de id din viata reala este numerotarea cd-urilor. Cand aveti un cd nou il numerotati si il
puneti in raft la sfarsit iar in catalog puteti sa il puneti sortat dupa titlu sau dupa numarul de ordine. La fel si intr-o
baza de date, puteti crea un camp care sa introduca automat un nr pentru fiecare rand nou adaugat in baza de
date si la afisare puteti sa il folositi (de exemplu la vizualizarea ultimilor 10 vizitatori folositi id-ul - vezi sectiunea
de monitorizare a traficului de pe acest site).
Pentru a creea un index avem urmatoarele comenzi:
Sa zicem ca avem o baza de date numita lista cu un camp caseta si adaugam campul id_casete - comanda este
urmatoarea:
ALTER TABLE `caseta` ADD `id_caseta` INT;
ALTER TABLE `caseta` CHANGE `id_caseta` `id_caseta` INT(11) UNSIGNED NOT NULL;
ALTER TABLE `caseta` ADD PRIMARY KEY (id_caseta);
ALTER TABLE `caseta` CHANGE `id_caseta` `id_caseta` INT(11) UNSIGNED DEFAULT "0" NOT NULL
AUTO_INCREMENT;
Si din acest moment, orice caseta noua introdusa va avea automat un nr de ordine. Este posibil ca toata insiruirea
de comenzi de mai sus sa se poata face printr-o singura linie de cod, dar este mai sigur sa faceti cate o modificare
in parte decat toate odata, pentru a detecta eventualele erori. Este bine sa creati un id la inceputul tabelului, cand
nu aveti intrari in baza de date, pentru a face incrementarea automat, altfel e posibil sa va dea erori. Cu ajutorul
id-ului puteti afisa de exemplu noutatile, cu o comanda de genul - afiseaza ultimele 10 intrari sortate dupa id...,
stiind ca intotdeauna ultima intrare are numarul cel mai mare...

Cat de mare poate fi un tabel?

MySQL stocheaza fizic datele unui tabel intr-un fisier pe hard disc si cu cat tabelul e mai mare, cu atat marimea
acestui fisier creste. Versiunea 3.22 a MySQL are o limita de 4 GB pentru marimea unui tabel. In versiunile
superioare aceasta limita este extinsa pana la 8 milioane TB pentru tipul de tabel MyISAM. Cu toate acestea,
sistemele de operare pot avea propriile limitari ale marimii fisierelor. Marimea impicita a tabelelor MySQL este de
aproximativ 4 GB. Puteti verifica marimea maxima pentru un tabel cu ajutorul comenzilor SHOW TABLE STATUS
sau myisamchk -dv table_name. Pe platforma Windows va trebui sa folositi sistemul de fisiere NTFS daca doriti sa
aveti tabele mai mari de 4 GB.

Functii Mysql
Functia mysql_connect
Aceasta functie realizeaza conectarea la un server MySQL. Functia mysql_connect primeste cinci
parametri optionali:
- primul reprezinta numele server-ului MySQL si daca lipseste se incearca conectarea la
calculatorul curent.
- cel de-al doilea reprezinta numele utilizatorului si in caz ca acesta lipseste se foloseste
valoarea root ca nume de utilizator.
- al treilea parametru reprezinta parola utilizatorului si in caz ca lipseste se foloseste sirul
vid in momentul conectarii la server.
- al patrulea parametru este de tip logic si are rolul de a indica motorului PHP ca in cazul
in care exista o conexiune la acelasi server sa se mai creeze inca una in loc sa se
reutilizeze cea existenta.
- ultimul parametru este de tip intreg si reprezinta proprietatile pe care le va avea
conexiunea. Acest ultim parametru poate fi o combinatie a valorilor:
a) MYSQL_CLIENT_COMPRESS - indica server-ului ca va trebui sa trimita date
comprimate.
b) MYSQL_CLIENT_IGNORE_SPACE - indica server-ului MySQL faptul ca va trebui
sa ignore spatiile care urmeaza dupa numele functiilor.
c) MYSQL_CLIENT_INTERACTIVE - indica server-ului MYSQL sa nu inchida
conexiunea dupa scurgerea unui anumit interval de timp in care script-ul nu a emis cereri
catre acesta.
Functia mysql_connect returneaza valoarea logica FALSE in cazul in care a esuat
conectarea la server-ul de baze de date si un identificator de acces la conexiunea catre
server-ul MySQL in care conectarea a reusit. In continuare sunt prezentate 2 modalitati
de conectare la un server MySQL:

Exemplu 1
<?php
$conectare = mysql_connect("nume_server", "user", "parola");
if ($conectare === FALSE)
{
echo "Conectare esuata.";
}
else
{
echo "Conexiune stabilita.";
}
mysql_close($conectare);
?>

Exemplu 2

<?php
$conectare = mysql_connect("nume_server", "user", "parola") OR die ("Conectare esuata.");
mysql_select_db("nume_tabel", $conectare) OR die ("Nu se poate alege baza de date!");
$interogare = "SELECT * FROM nume_tabel";
$resultat = mysql_query($interogare) OR die ("Nu se poate executa interogarea!");
// afisare rezultat
mysql_close($conectare);
?>

Functia mysql_close
Aceasta functie primeste ca parametru un identificator de acces la o conexiune spre un server MySQL si realizeaza
inchiderea acesteia.

Functia mysql_ping
Functia mysql_ping verifica daca server-ul de MySQL a inchis conexiunea sau nu. Aceasta nu are nici un parametru
si returneaza valoarea logica TRUE in cazul in care conexiunea nu a fost inchisa si valoarea logica FALSE in caz
contrar.

Functia mysql_create_db
Aceasta functie este utilizata pentru a crea o noua baza de date pe server-ul MySQL. Functia are doi parametri.
Primul este de tip sir de caractere si reprezinta numele bazei de date care va fi creata, iar cel de-al doilea
parametru reprezinta identificatorul de acces la conexiunea catre server-ul MySQL. Functia returneaza valoarea
logica TRUE in cazul in care a reusit sa creeze baza de date si valoarea logica FALSE in caz contrar.

Functia mysql_drop_db
Aceasta functie este folosita pentru a sterge o baza de date. Functia mysql_drop_db are doi parametri. Primul este
de tip sir de caractere si reprezinta numele bazei de date care va fi stearsa, iar cel de-al doilea parametru
reprezinta identificatorul de acces la conexiunea catre server-ul MySQL. Functia returneaza valoarea logica TRUE in
cazul in care s-a reusit stergerea bazei de date si valoarea logica FALSE in caz contrar.

Functia mysql_select_db
Aceasta functie seteaza baza de date pentru o conexiune catre un server MySQL pentru interogarile care vor urma.
Functia mysql_select_db are doi parametri. Primul este de tip sir de caractere si reprezinta numele bazei de date
care va fi folosita pentru interogarile ulterioare, iar cel de-al doilea parametru reprezinta identificatorul de acces la
conexiunea catre serverul MySQL. Functia returneaza valoarea logica TRUE in cazul in care s-a reusit selectarea
bazei de date si valoarea logica FALSE in cazul in care baza de date nu exista sau utilizatorul nu are drepturi de
acces la aceasta.

Functia mysql_query
Aceasta functie se foloseste pentru a interoga o anumita baza de date. Functia are 3 parametri:
- primul este de tip sir de caractere si reprezinta cererea emisa server-ului MySQL;
- al doilea parametru reprezinta identificatorul de acces al unei conexiuni catre server;
- al treilea parametru este optional si de tip intreg si reprezinta modul in care va fi returnat rezultatul.
Ultimul parametru poate avea valorile MYSQL_USE_RESULT sau MYSQL_STORE_RESULT . In cazul in care ultimul
parametru lipseste, pentru interogare se va folosi valoarea MYSQL_STORE_RESULT , iar rezultatul primit va fi
stocat in zone tampon pana cand va fi utilizat. Daca, pentru ultimul parametru, se foloseste valoarea
MYSQL_USE_RESULT , atunci rezultatul primit nu va fi stocat, deoarece va fi procesat imediat dupa apelul functiei.
Utilizarea functiei folosind valoarea MYSQL_USE_RESULT pentru ultimul parametru are acelasi efect cu aplicarea
functiei mysql_unbuffered_query fara a folosi ultimul parametru. Functia returneaza o valoare de tip resursa in
cazul in care a fost apelata folosind o interogare care presupune primirea unui rezultat cum sunt comenzile
SELECT , SHOW , EXPLAIN si DESCRIBE si nu a aparut nici o eroare, iar in cazul aparitiei unei erori, este returnata
valoarea logica FALSE . In cazul in care functia mysql_query este apelata pentru o interogare care nu presupune
primirea unui rezultat, este returnata valoarea logica TRUE si valoarea logica FALSE in cazul aparitiei unei erori. In
continuare aveti un exemplu de interogare a unei baze de date si anume tabelul care contine voturile din
chestionarul existent pe prima pagina. Aici se afiseaza doar primele 10 inregistrari.

<?php
$conectare = mysql_connect ("localhost","root","parola") OR die("Nu sa putut efectua conectarea la bd.");
mysql_select_db("nume_tabel", $conectare) OR die("Nu se poate selecta tabelul din bd!");
$interogare = "SELECT * FROM nume_tabel LIMIT 0,10";
$rezultat = mysql_query($interogare) OR die ("Nu se poate executa interogarea!");
// creare cap de tabel
echo "<table width='100%' border='1' cellpadding='0' cellspacing='0' bordercolor='#000099'>
<tr>
<td><div align='center'>Nr.</div></td>
<td><div align='center'>Faza 1 </div></td>
<td><div align='center'>Faza 2 </div></td>
<td><div align='center'>Faza 3 </div></td>
<td><div align='center'>Faza 4 </div></td>
<td><div align='center'>Faza 5 </div></td>
<td><div align='center'>Faza 6 </div></td>
<td><div align='center'>Faza 7 </div></td>
<td><div align='center'>Data</div></td>
<td><div align='center'>Ora</div></td>
<td><div align='center'>Browser</div></td>
<td><div align='center'>Host</div></td>
<td><div align='center'>Ip</div></td>
</tr>";
while ($rand = mysql_fetch_array($rezultat, MYSQL_BOTH))
{
// continuare tabel cu afisare inregistrari
echo "<tr>
<td><div align='center'>".$rand['nr']."</div></td>
<td><div align='center'>".$rand['intreb_a']."</div></td>
<td><div align='center'>".$rand['intreb_b']."</div></td>
<td><div align='center'>".$rand['intreb_c']."</div></td>
<td><div align='center'>".$rand['intreb_e']."</div></td>
<td><div align='center'>".$rand['intreb_f']."</div></td>
<td><div align='center'>".$rand['intreb_g']."</div></td>
<td><div align='center'>".$rand['intreb_h']."</div></td>
<td><div align='center'>".$rand['data']."</div></td>
<td><div align='center'>".$rand['ora']."</div></td>
<td><div align='center'>".$rand['browser']."</div></td>
<td><div align='center'>".$rand['host']."</div></td>
<td><div align='center'>".$rand['ip']."</div></td>
</tr>";
}
// inchidere tabel html
echo "</table>";
mysql_free_result($rezultat);
mysql_close($conectare);
?>
Rezultatul va fi urmator

Nr. Faza 1 Faza 2 Faza 3 Faza 4 Faza 5 Faza 6 Faza 7 Data Ora Host
1 da da da da da da nu 09-02-2004 16:02:11 vlad.mediasat.ro
2 da da da da da nu nu 10-02-2004 22:02:18 217.19.6.171
3 da da da da da da DESPRE BAZE DE 11-02-2004 10:02:42 217.19.6.171
DATE DISTRIBUITE
4 da da da da da da DESPRE BAZE DE 11-02-2004 10:02:59 217.19.6.171
DATE DISTRIBUITE
5 da nu nu nu nu nu nu 11-02-2004 11:02:30 217.19.6.171
6 da da da da da da php 11-02-2004 18:02:27 217.19.6.171
7 da nu nu nu nu nu nu 13-02-2004 15:02:59 217.19.6.171
8 da nu nu nu nu nu nu 13-02-2004 17:02:00 217.19.6.171
9 da nu nu nu nu nu nu 13-02-2004 17:02:30 217.19.6.171
10 da nu nu nu nu nu nu 15-02-2004 17:02:31 217.19.6.171

Functia mysql_unbuffered_query
Aceasta functie se foloseste pentru a interoga o anumita baza de date si are aceeasi parametri cu functia
anterioara. Diferenta dintre aceasta functie si mysql_query este aceea ca, in cazul functiei
mysql_unbuffered_query , daca ultimul parametru lipseste, se foloseste la interogarea bazei de date valoarea
MYSQL_USE_RESULT.

Functia mysql_real_escape_string
Aceasta functie este utila in momentul in care se doreste introducerea in cadrul unei interogari a unui sir de
caractere care nu poate fi interpretat corect de catre server-ul MySQL si realizeaza transformarea sirului intr-unul
care poate fi interpretat. Functia mysql_real_escape_string are doi parametri. Primul este de tip sir de caractere si
reprezinta sirul care va fi transformat, iar cel de-al doilea reprezinta identificatorul de acces la o conexiune catre
un server MySQL. Functia returneaza un sir de caractere care poate fi interpretat corect de catre server-ul MySQL.
De exemplu, daca apelam aceasta functie pentru sirul de caractere " D'apoi " vom obtine rezultatul " D\'apoi ",
deoarece caracterul ' (apostrof) are o alta semnificatie pentru server-ul MySQL daca nu e precedat de caracterul
"\".

Functia mysql_free_result
Aceasta functie se foloseste pentru a elibera memoria alocata stocarii unui rezultat primit in urma unei interogari
de la un server MySQL. Functia mysql_free_result are un singur parametru, si anume o variabila de tip resursa a
carei valoare a fost setata folosind una dintre functiile mysql_query sau mysql_unbuffered_query . Functia
returneaza valoarea logica TRUE in cazul in care a reusit sa elibereze memoria utilizata de variabila de tip resursa
primita ca parametru si valoarea logica FALSE in caz contrar.

Functia mysql_num_rows
Aceasta functie returneaza numarul de inregistrari continute de catre un rezultat primit de
la server-ul MySQL. Functia mysql_num_rows are un singur parametru, si anume o
variabila de tipul resursa a carei valoare a fost setata folosind una dintre functiile
mysql_query sau mysql_unbuffered_query . Functia returneaza un numar intreg care
reprezinta numarul de inregistrari continute de variabila de tip resursa primita ca
parametru. In continuare este un exemplu de utilizare a acestei functii. In exemplu se
afiseaza numarul total de inregistrari din tabelul care contine voturile din chestionarul
existent pe prima pagina.

<?php
$conectare = mysql_connect("localhost", "user", "parola") OR die("Nu se poate conecta la server");
mysql_select_db("nume_bd", $conectare) OR die("Nu se poate selecta baza de date");
$rezultat = mysql_query("SELECT * FROM nume_tabel", $conectare) OR die("Nu se poate face interogarea la
baza de date");
$total = mysql_num_rows($rezultat);
echo "Chestionarul a fost completat de ".$total." de ori.";
mysql_free_result($rezultat);
mysql_close($conectare);
?>

Functia mysql_info
Aceasta functie returneaza un sir de caractere care contine informatii referitoare la ultima interogare a unei baze
de date in urma careia nu s-a primit nici un rezultat, cum este cazul functiilor INSERT sau UPDATE . Functia
mysql_info are un singur parametru care reprezinta identificatorul de acces al unei conexiuni spre un server
MySQL.

Functia mysql_affected_rows
In cazul interogarilor in urma carora nu se obtine nici un rezultat, se poate folosi functia mysql_affected_rows
pentru a verifica numarul de inregistrari care au fost actualizate la ultima interogare a bazei de date, pentru
celelalte tipuri de interogari putandu-se folosi functia mysql_num_rows . Functia mysql_affected_rows are un
singur parametru care reprezinta identificatorul de acces al unei conexiuni spre un server MySQL si returneaza un
numar intreg, care reprezinta numarul de inregistrari actualizate la ultima interogare a bazei de date.

Functia mysql_fetch_array
Aceasta functie transforma o inregistrare dintr-un rezultat primit de la server-ul MySQL intr-o lista. Functia
mysql_fetch_array colecteaza datele referitoare la inregistrarea curenta si le returneaza sub forma unei liste ale
carui elemente pot fi accesate folosind numele campurilor, numarul lor de ordine sau folosind ambele moduri.
Daca nu mai sunt inregistrari de prelucrat, functia feturneaza valoarea logica FALSE . Aceasta functie are doi
parametri:
- primul parametru este de tipul resursa, a carui valoare a fost setata folosind una dintre functiile mysql_query sau
mysql_unbuffered_query ;
- al doilea parametru este optional, este de tip intreg si reprezinta modul in care sa face transformarea.
Cel de-al doilea parametru poate avea una din valorile urmatoare:
- MYSQL_ASSOC - elementele din lista rezultata pot fi accesate folosind doar numele campurilor;
- MYSQL_NUM - elementele din lista rezultata pot fi accesate folosind doar numerele de ordine ale campurilor;
- MYSQL_BOTH - elementele din lista rezultata pot fi accesate folosind ambele moduri prezentate anterior;

Functia mysql_fetch_assoc
Aceasta functie transforma o inregistrare dintr-un rezultat primit de la server-ul MySQL intr-o lista si are acelasi
efect cu cel al folosirii functiei mysql_fetch_array , folosind pentru cel de-al doilea parametru valoare
MYSQL_ASSOC .

Functia mysql_fetch_num
Aceasta functie transforma o inregistrare dintr-un rezultat primit de la server-ul MySQL intr-o lista si are acelasi
efect cu cel al folosirii functiei mysql_fetch_array , folosind pentru cel de-al doilea parametru valoarea
MYSQL_NUM .

Functia mysql_stat
Aceasta functie returneaza un sir de caractere care reprezinta statusul server-ului MySQL si are un singur
parametru care reprezinta identificatorul de acces la o conexiune catre un server MySQL.

Exemplu

<?php
$conectare = mysql_connect("localhost", "user", "parola") OR die("Nu se poate conecta la server");
$stare = explode(' ',mysql_stat($conectare));
print_r($stare);
mysql_close($conectare);
?>
Rezultatul este:

Array
(
[0] => Uptime: 124603
[1] => Threads: 61
[2] => Questions: 8389744
[3] => Slow queries: 14
[4] => Opens: 270361
[5] => Flush tables: 1
[6] => Open tables: 64
[7] => Queries per second avg: 67.332
)

Rularea aplicatiilor oracle


https://apex.oracle.com/pls/apex/f?p=4800:1::::::
creeaza domeniu
https://apex.oracle.com/pls/apex/f?p=4550:1:108658325562149:::::
OK
PESTE TOT
Server
DESKTOP-VHMFG48
create or replace function Even(Value in integer)) return boolean is
FunctionResult boolean;
begin
Result := (Value mod 2 = 0);
return(FunctionResult);
return(FunctionResult);
end Even;
create or replace function Odd(Value in integer) return boolean is
FunctionResult boolean;
begin
FunctionResult := not Even(Value);
return(Result);
return(FunctionResult);
end Odd;
create or replace function Even(Value in integer) return boolean is
Result boolean;
begin
-- Check if there is a remainder after dividing by 2
Result := (Value mod 2 = 0);
return(Result);
end Even;
/
create or replace function Odd(Value in integer) return boolean is
Result boolean;
begin
Result := not Even(Value);
return(Result);
end

https://iacademy.oracle.com/ords/f?
p=4550:1:14181404847044:::::
RO_GLS2
RO_GLS2_SQL01_S01

oracle e parola
http://flibrary.org/
http://flibrary.org/
http://www.33367.com/
http://www.linksgarden.com
http://www.vebook.org
http://www.ebooksportal.org
http://trh990.blogspot.com
http://ebook.blogfa.com/
http://lab.lpicn.org/pub/books/
http://flibrary.org/ + tRAINING
http://debian.yaako.org/books/
http://ebook.blogfa.com/
Tutoriale video: http://www.ebooksportal.org
Tutoriale video: http://www.xpressionsz.com/

2) apache,php ,mysql
Pentru a rula site uri care au la baza php se parcurg etapele :

1. Instalare xammp

https://sourceforge.net/projects/xampp/
Ok

Aleg in engleza

2. Activez serverul apache si mysql de acolo unde instaleaza de la fisierul de control


Observatie Copiem directorul cu aplicatiile aici

Admin
Pasw systendba
Add
DESKTOP-VHMFG48
pach
C:\Program Files\PremiumSoft\Navicat 16 for MySQL
Acesta va fi cel bun
NAVN-YYSR-JPLJ-757C

Copy
Generate
Registration
Sterg extensia back

Se copiaza aici
NAVA-VAFL-TQMA-JRKM

Manual copiez
Generate
COPIEM DIN CRACK TOT
EC-C01

C:\Program Files (x86)\Common Files\Primavera Common


User
pubuser
Pasw
3) oracle
Parola BoGdAn11111
A treia de configurare
BoGdAn11111
Sau
Cancel
Si redeschid configurarea
https://www.microsoft.com/en-us/sql-server/sql-server-downloads?rtc=1

Basic
Creez cont azureprin windows
Apply de fiecare data
Save
Close

S-ar putea să vă placă și