Kommunikáció a adatbázis php mysql
DBMS MySQL - az egyik több adatbázis által támogatott PHP. MySQL rendszer ingyenes, és joga van a valós problémák megoldására.
Rövid bevezetés a MySQL
SQL - egy mozaikszó Structured Query Language szavak. ami azt jelenti, strukturált lekérdező nyelv. Ez a nyelv egy szabványos eszközökkel való hozzáférés különböző adatbázisokban.
MySQL rendszer egy szerver, amely képes kapcsolódni a távoli felhasználók számára.
Együttműködik adatbázisok könnyen használható eszköz, amely benne van a Web-Developer Kit: Denwer phpMyAdmin. Akkor hozzon létre egy új adatbázist, hozzon létre egy új táblát a kiválasztott adatbázisban, töltse ki a táblázat adatait, valamint hozzáadni, törölni, és szerkesztheti az adatokat.
Minden sorban kell egy attribútum értékét. Ha nincs megadva, a mező üresen hagyható (NULL)
A különlegessége MySQL, amely lehet aktiválni a numerikus oszlopok. Amikor behelyezi sorokat egy táblázatot, hogy hagyja üresen a mezőt, MySQL automatikusan létrehoz egy egyedi azonosító értékét. Ez az érték lesz az egyik nagyobb, mint a maximális érték, amely már létezik az oszlopon. Minden tábla nem lehet több, mint egy ilyen területen. AUTO_INCREMENT oszlopokat kell indexelni
Oszlop az elsődleges kulcsot az asztalra. Az adatok ebben az oszlopban egyedinek kell lennie. MySQL automatikusan indexeli az oszlop
Miután a egész típusú azt jelenti, hogy annak értéke lehet pozitív vagy nulla
Az oszlop neve
Hozzon létre egy új MySQL adatbázis végzi el az SQL-parancs CREATE DATABASE.
Ahhoz, hogy hozzon létre egy számított mező az aktuális dátumot vagy TIMESTAMP típusú DATETIME használja az alábbi konstrukciót:
Hozzátéve adatok ebben a táblázatban végezzük útján INSERT SQL-parancsot. Például:
Ahhoz, hogy megkapja a táblázat adatait a SELECT utasításban. Ez beolvassa az adatokat az adatbázisból kiválasztja a sorokat, amelyek megfelelnek a feltételeknek megadott. A SELECT utasítás kíséri jelentős számú választási lehetőséget és használati esetek.
A * azt jelzi, hogy az összes mező kitöltése kötelező. Például:
Eléréséhez csak egy bizonyos területen kell feltüntetni nevét a SELECT utasításban. Például:
Ahhoz, hogy hozzáférjen egy részhalmaza a táblázat sorai a jeleznie kell a kiválasztási kritérium, amely meghatározza, ahol a design. Például válassza ki a rendelkezésre álló olcsó könyvet PHP, szükséges, hogy a kérelmet:% tetszőleges számú karakter, akár nulla
_ Pontosan egy karakter
Ahhoz, hogy húr kivont igény szerepeltek egy bizonyos sorrendben, ORDER BY design. Például:
Alapértelmezett poryadoksortirovki felemelkedik. Változás, hogy a fordított sorrendben, akkor a DESC kulcsszót.
Küld lehet, és több oszlopot. Ehelyett oszlop nevét használhatják a sorozatszámot:
Változtatni a korábban felvett egy táblázatot az értékek meg kell használni egy UPDATE utasítás. Például, az ár minden könyv 10% -kal nőtt:
WHERE korlátozza a munka UPDATE bizonyos szálakat. Például:
Sorokat törölni egy adatbázis a DELETE utasítással. Felesleges meghatározott vonaltól azzal, ahol szerkezettel. Például egyes könyvek árusítása:
Ha azt szeretnénk, hogy az összes bejegyzés törléséhez
Ahhoz, hogy teljesen eltávolítani a táblázatban használja:
Kommunikáció PHP és a MySQL adatbázis
Munka után a phpMyAdmin adatbázis létrehozásához, akkor kezdődik kapcsolódni az adatbázis külső Web-alapú.
Az adatbázis eléréséhez az internetről, PHP, szükséges, hogy a következő alapvető lépéseket:- Csatlakozás a MySQL szerver.
- Ha kiválaszt egy adatbázist.
- Futás egy lekérdezést az adatbázisban:
- hozzátéve;
- törlése;
- megváltoztatni;
- keresni;
- válogatás.
- Fogadása a lekérdezés eredményét.
- Leválasztása az adatbázisból.
Kapcsolódni az adatbázis szerver PHP ott mysql_connect () függvényt. A paraméterek: számítógép nevét, a felhasználói nevet és jelszót. Ezek az érvek elhagyható. Az alapértelmezett számítógép name = localhost. akkor a felhasználói név és jelszó nem szükséges. Ha a PHP együtt használják az Apache szerver, akkor mysql_pconnect () függvényt. Ebben az esetben a kapcsolatot a szerver nem tűnik el mysql_close () függvény vagy a program befejezi a hívást. mysql_connect () és mysql_pconnect () visszatér az azonosító a kapcsolat, ha minden jól megy. Például:
Miután a kapcsolat a MySQL telepítve van, akkor ki kell választania az adatbázisban. Ehhez használja a funkciót mysql_select_db (). Her érv: az adatbázis nevét. A függvény igaz értékkel tér vissza. Ha a megadott adatbázis létezik és az ahhoz való hozzáférés nem lehetséges. Például:
Hozzáadni, törölni, az adatok módosításához válassza ki az igényt, hogy és végre egy SQL lekérdezést. Erre a célra a mysql_query () függvény a nyelv PHP. Érvelését: a húr a kérést. A függvény egy kérés azonosítója.
Minden egyes művelet a táblázatban az 1. példa adunk egy új rekordot tartalmazó azonos adatokat. Természetesen van értelme felvenni az adatokat a felhasználó által megadott bázis.
2.1 példa mutatja a HTML-formában, hogy új könyveket az adatbázisba.
2.1 példa
Eredmények töltse ki ezt az űrlapot kerülnek továbbításra insert_book.php.
2.2 példa
2.2 példában megadott sztring kezelt adatokat funkció addslashes (). Ez a funkció egészíti visszaperjelet előtt az aposztróf jelet ( „) idézőjelet („), fordított perjel (\), és a null-os. Az a tény, hogy a követelmények sistaksisa adatbázis-lekérdezések az egyedüli felelős a karakterek idézőjelbe.
Annak megállapításához, a rekordok száma használt mysql_num_rows () függvény a lekérdezésben.
A példa azt mutatja, 3-1 HTML-formában kíván különleges könyvek az adatbázisban.
például 3.1
Eredmények töltse ki ezt az űrlapot kerülnek továbbításra search_book.php.
3.2 példa
Egy alternatív lehetőség
A tranzakció mechanizmus
A tranzakció mechanizmus a példa, hogyan lehet átvinni a pénzt az egyik emberről a másikra
SELECT ... FOR UPDATE
Ha többszörös folyamatok futtatására, hogy jelöljünk ki lekérdezést ugyanannál az asztalnál, akkor lehet választani ugyanazt a rekordot egy időben.
Annak elkerülése érdekében, a fenti helyzet, akkor nem egyszerűen egy SELECT lekérdezést, és kibővített változata, amelyet sokan nincsenek tisztában: SELECT ... FOR UPDATE.
Így, amikor végre a lekérdezést, az összes érintett az adatbázist le lesz zárva, hogy befejezze a munkamenetet, vagy addig, amíg az adatbázis frissítés rekordokat. Tovább script nem lesz képes kiválasztani a zárolt rekord, amíg eljön egy ilyen körülmények között.
Azonban nem minden ilyen egyszerű. Meg kell végezni néhány további feltételek. Először is, az asztalnál kell létrehozni alapján InnoDB építészet. Ellenkező esetben a zár egyszerűen nem működik. Másodszor elvégzése előtt a mintát le szeretné tiltani auto-commit kérésre. Ie Más szóval, az automata a megkeresés. Ha belép az UPDATE lekérdezést, akkor több időre van szüksége, hogy alkalmazni kell az adatbázis, és kötelezzék a változást a COMMIT parancsot: