Baze de date MySQL - una dintre multiplele baze de date suportate de PHP. Sistemul MySQL este gratuit și are puterea de a rezolva probleme reale.
Scurtă Introducere în MySQL
SQL - un acronim pentru cuvinte de interogare limbaj structurat. ceea ce înseamnă un limbaj de interogare structurată. Acest limbaj este un mijloc standard de acces la diferite baze de date.
Sistemul MySQL este un server care se poate conecta utilizatorii la distanță.
Pentru a lucra cu baze de date ușor de utilizat instrument care este inclus in kit-ul Web-Developer: Denwer phpMyAdmin. Puteți crea o nouă bază de date, a crea un tabel nou în baza de date selectată, completați datele din tabel, precum și a adăuga, șterge și edita date.
Toate rândurile trebuie să aibă o valoare a acestui atribut. În cazul în care nu este specificat, câmpul poate fi lăsat necompletat (NULL)
O caracteristică specială a MySQL, care poate fi activat în coloanele numerice. La introducerea rânduri într-un tabel pentru a părăsi câmpul liber, MySQL genereaza automat o valoare unică de identificare. Această valoare va fi una mai mare decât valoarea maximă care există deja în coloană. Fiecare tabel poate fi nu mai mult de un astfel de domeniu. coloane auto_increment trebuie să fie indexate
Coloana este cheia principală pentru tabel. Datele din această coloană trebuie să fie unic. MySQL indexează în mod automat această coloană
După tipul întreg înseamnă că valoarea sa poate fi pozitiv sau zero,
Numele coloanei
Crearea unei noi baze de date MySQL este realizată folosind SQL-comanda CREATE DATABASE.
Pentru a crea un câmp calculat cu data curentă sau de tip TIMESTAMP Datăoră folosiți următoarea construcție:
Adăugarea de date în acest tabel se realizează prin intermediul INSERT SQL-comandă. De exemplu:
Pentru a prelua datele din tabel este SELECT declarație. Acesta preia datele din baza de date prin selectarea rândurilor care îndeplinesc criteriile introduse. Instrucțiunea SELECT este însoțită de un număr considerabil de opțiuni și cazuri de utilizare.
Simbolul * indică faptul că toate câmpurile sunt obligatorii. De exemplu:
Pentru a avea acces numai la un anumit domeniu ar trebui să indice numele său în instrucțiunea SELECT. De exemplu:
Pentru a avea acces la un subset de rânduri din tabel trebuie să indice un criteriu de selecție care stabilește unde designul. De exemplu, pentru a selecta cartea ieftine disponibile pe PHP, este necesar să se facă o cerere:% potrivește cu orice număr de caractere, chiar zero,
_ Se potrivește exact un caracter
Pentru șir extras la cerere, au fost enumerate într-o anumită ordine, utilizarea ORDER BY Design. De exemplu:
Implicit poryadoksortirovki este ascendentă. Schimbarea la ordine inversă, puteți utiliza cuvântul cheie DESC.
Sortare poate și mai multe coloane. În schimb, numele coloanelor pot folosi numerele lor de serie:
Pentru a schimba înregistrat anterior într-un tabel de valori pe care trebuie să utilizați o declarație UPDATE. De exemplu, prețul tuturor cărților a crescut cu 10%:
Clauza WHERE pentru a limita UPDATE anumite șiruri de lucru. De exemplu:
Pentru a șterge rânduri dintr-o bază de date utilizând instrucțiunea DELETE. line Inutile specificat cu UNDE structura. De exemplu, unele cărți sunt vândute:
Dacă doriți să ștergeți toate intrările
Pentru a elimina complet din tabel, utilizați:
PHP Comunicarea cu o bază de date MySQL
După ce a lucrat cu phpMyAdmin pentru a crea o bază de date, puteți începe să vă conectați baza de date la un web bazat pe extern.
Pentru a accesa baza de date de pe Web, folosind PHP, este necesar să se facă următorii pași de bază:- Conectarea la serverul MySQL.
- Selectarea unei baze de date.
- Rularea unei interogări la baza de date:
- adaugand;
- ștergerea;
- schimba;
- căutare;
- sortare.
- Primirea rezultatul interogării.
- Deconectarea de la baza de date.
Pentru a vă conecta la serverul de baze de date în PHP există mysql_connect) funcția (. Argumentele sale sunt: numele computerului, numele de utilizator și parola. Aceste argumente pot fi omise. Numele computerului implicit = localhost. atunci nu este necesară numele de utilizator și parola. Dacă PHP este utilizat în conjuncție cu serverul Apache, puteți utiliza funcția mysql_pconnect (). În acest caz, conexiunea la serverul nu dispare după) funcția sau program mysql_close (apelul se termină. mysql_connect () și mysql_pconnect () returnează identificatorul conexiunii, dacă totul merge bine. De exemplu:
După ce este instalat conexiunea la serverul MySQL, trebuie să selectați baza de date. Pentru a face acest lucru, utilizați funcția mysql_select_db (). Argumentul ei: numele bazei de date. Functia returneaza true. În cazul în care baza de date specificată există și accesul la acesta este posibil. De exemplu:
Pentru a adăuga, șterge, modifica datele și selectați necesitatea de a construi și de a executa o interogare SQL. In acest scop mysql_query) funcția în PHP limbă (. Argumentul ei: șirul cu solicitarea. Funcția returnează un ID de solicitare.
Pentru fiecare operațiune în tabelul din exemplul 1, se adaugă o nouă înregistrare care conține aceleași date. Desigur că are sens pentru a adăuga la datele introduse de utilizator de bază.
Exemplul 2.1 prezinta HTML formular pentru a adăuga cărți noi la baza de date.
exemplul 2.1
Rezultatele completați acest formular sunt transmise în insert_book.php.
exemplul 2.2
În exemplul 2.2 datele introduse string manipulate addslashes funcție (). Această caracteristică adaugă un backslash înainte de ghilimele simple ( „), ghilimele duble („), backslash (\) și nul-byte. Faptul că cerințele sistaksisa interogări de baze de date sunt singurii responsabili pentru caracterele între ghilimele.
Pentru a determina numărul de înregistrări mysql_num_rows utilizate () în interogare.
În exemplul 3-1 prezintă HTML formular pentru a căuta cărți specifice în baza de date.
exemplul 3.1
Rezultatele completați acest formular sunt transmise în search_book.php.
exemplul 3.2
O opțiune alternativă
Utilizarea mecanismului de tranzacție
Folosind mecanismul de tranzacție pe exemplul de modul de a transfera bani de la o persoană la alta
SELECT ... FOR UPDATE
Dacă executați mai multe procese care fac o interogare de selectare la aceeași masă, atunci ei pot alege aceeași înregistrare, în același timp.
Pentru a evita situația de mai sus, trebuie nu doar o interogare SELECT, și versiunea sa extinsă, pe care mulți nu sunt conștienți: SELECT ... FOR UPDATE.
Astfel, atunci când efectuează interogarea, toate înregistrările afectate din baza de date va fi blocat pentru a termina sesiunea sau până când înregistrările de actualizare a bazei de date. Un alt script nu va fi capabil de a selecta înregistrarea blocat până când nu va veni una dintre aceste condiții.
Cu toate acestea, nu toate atât de simplu. Ai nevoie pentru a efectua câteva condiții. În primul rând, tabelul dvs. ar trebui să fie creat pe baza arhitecturii InnoDB. În caz contrar, blocarea nu va funcționa pur și simplu. În al doilea rând, înainte de efectuarea probei pe care doriți să dezactivați solicitarea de auto-comite. Ie cu alte cuvinte, executarea automată a cererii. Odată ce ați introdus interogarea UPDATE, veți avea nevoie de mai mult timp pentru a aplica la baza de date și comite o schimbare folosind comanda COMMIT: