Sql - kérdések és feldolgozás segítségével php

SQL - lekérdezés és feldolgozás PHP

A folyamat kezelésére az adatbázis táblákat MySQL segítségével SQL lekérdező nyelv. Az SQL - egy rövidítés, és hogy „feltárja” - strukturált lekérdező nyelv.
A PHP nyelv erre a célra, van számos funkciót előtaggal „mysql”. Meg kell vizsgálni a kérések nem sokan. Funkció, amely nélkül nem lenne egyszerűen lehetetlen PHP végrehajtása SQL-lekérdezések:

Ez a funkció küld egy lekérdezést az adatbázisnak, és visszatér az esetben a sikeres kezelés erőforrás-azonosító.
Annak érdekében, hogy csatlakozni egy MySQL adatbázis, tegye a következőket:

$ Host = 'localhost'; // gépnév (megerősítendő a szolgáltató)
$ Adatbázis = 'db_name'; // adatbázis neve, akkor létre kell hozni
$ User = 'user_name'; // akkor adjon meg egy felhasználói nevet, vagy egy adott szolgáltató
$ PSWD = 'your_pass'; // Állítsa be a jelszót

$ DBH = mysql_connect ($ host, $ user, $ PSWD) or die ( "Nem lehet csatlakozni a MySQL.");
mysql_select_db ($ adatbázis) or die ( "Nem lehet kapcsolódni az adatbázishoz.");

Tehát a mysql_connect () - függvény kapcsolódni a MySQL szerver tárhely.
A mysql_select_db () kiválaszt egy adatbázist a szerver csatlakozik.
Más szóval, mi kapcsolódni a szerverhez, válassza ki az adatbázist, és elkezd dolgozni.
die () függvény esetén a hiba, és egy üzenetet jelenít meg a böngésző ablakban megadott.
Ahhoz, hogy állítsa le az adatbázist a funkció használható:

Amennyiben $ DBH - fogantyú, amely, ha csatlakozik vissza mysql_connect funkció.
Befejezése után a start felülvizsgálat kezdjük venni a tényleges SQL-lekérdezések.
Ehhez először létre kell hoznia egy adatbázist egy bizonyos nevet. És azt, hogy hozzon létre egy táblázatot is, különös név. Példáinkben fogunk hivatkozni my_sql_table asztalra. Ahhoz, hogy létrehozza ezt a táblázatot, nézzük teljesítsük localhost phpmyadmin a következő lekérdezést:

CREATE TABLE `my_sql_table` (
`Id` INT NOT NULL. // azonosítója a jövő táblázat bejegyzéseit
`Firstname` VARCHAR (50) NOT NULL, // szöveg VARCHAR mező
`Surname` VARCHAR (50) NOT NULL, // max 50 karakter
PRIMARY KEY ( `id`) // elsődleges kulcs - ID azonosító
);

Tehát a tábla jön létre. Végezze el az első kérelem, amely azonnal kiadja a PHP-kód:

$ Host = 'localhost'; // gépnév (megerősítendő a szolgáltató)
$ Adatbázis = 'db_name'; // adatbázis neve, akkor létre kell hozni
$ User = 'user_name'; // akkor adjon meg egy felhasználói nevet, vagy egy adott szolgáltató
$ PSWD = 'your_pass'; // Állítsa be a jelszót

$ DBH = mysql_connect ($ host, $ user, $ PSWD) or die ( "Nem lehet csatlakozni a MySQL.");
mysql_select_db ($ adatbázis) or die ( "Nem lehet kapcsolódni az adatbázishoz.");
$ Query = "SELECT * FROM` my_sql_table`";
$ Res = mysql_query ($ query);
míg a ($ sor = mysql_fetch_array ($ res))
echo "Szám:". $ row [ 'id'].”
\ N „;
echo "name:". $ row [ 'keresztnev'].”
\ N „;
echo "Név:". $ row [ 'névre'].”


\ N „;
>

Nézzük PHP-kódot firstsql.php fájlt. Kezdjük a tényleges lekérdezés az adatbázis táblák (DB).

$ Query = "SELECT * FROM` my_sql_table`";

Ezt a kérelmet lehet értelmezni: választani my_sql_table adatbázis tábla összes bejegyzés minden területen. Így a jel szó után a SELECT * jelentése „kiválasztásához mindent.” Így a kérelem képződik. Most végre kell hajtani:

Ha sikeres, a kérés mysql_query () függvény azonosítóját az erőforrás számunkra $ res.
Úgy van, hogy át paraméterként a mysql_fetch_array () függvényt. A neve ennek a funkciónak az magától értetődő. Ie generál, és kiadja a tömb egy minta alapján az adatbázis tábla. Esetünkben az asztalra áll tömb elemeinek száma egyenlő a rekordok (sorok) egy asztal és tartsa értékeit id, keresztnév, vezetéknév minden sorban. Ezért a következő kódot:

míg a ($ sor = mysql_fetch_array ($ res))
echo "Szám:". $ row [ 'id'].”
\ N „;
echo "name:". $ row [ 'keresztnev'].”
\ N „;
echo "Név:". $ row [ 'névre'].”


\ N „;
>

$ Query = "SELECT csaladnev FROM` my_sql_table`";

ez azt jelentené, hogy az összes kijelölt sorban csak keresztnev mező értékeket.
Ezért az előző kódot kell átírni:

$ Res = mysql_query ($ query);
míg a ($ sor = mysql_fetch_array ($ res))
echo "name:". $ row [ 'keresztnev'].”
\ N „;
>

Ha azt szeretnénk, hogy válasszon ki egy sort a táblázatban egy adott érték id, ahol a név (családi) van Petrov. akkor a lekérdezés újraírni az alábbiak szerint:

$ Query = "SELECT id FROM` my_sql_table` ahol névre = 'Petrov";

De ha meg kell tudni a nevét, aki számozott, például 5, a lekérdezés lenne:

$ Query = "SELECT eredetű FROM` my_sql_table` ahol id = 5";

Ebben az esetben, ha tudjuk, hogy a lekérdezés eredményének akkor csak egy sort a táblázatban. Ie nincs értelme szervezni ciklus segítségével egy darabig. És a hívás a következő lesz

$ Res = mysql_query ($ query);
$ Sor = mysql_fetch_row ($ res);
echo "Név öt ember a listán:" $ row [0] "\ n"; ..

Itt helyett mysql_fetch_array () alkalmaztuk mysql_fetch_row (). Ie megkapja a mező értéke (vagy mezők) egy adott sorban. Mivel a területen, mi volt egy - eredetű - tudunk hivatkozni egyetlen elem a tömb $ row mint $ row [0];.

Továbbá, mi nem csak lakik a kérelmek feldolgozását, figyelembe vesszük a legjellemzőbb példa a tényleges lekérdezések.

Így tartjuk a legjellemzőbb példa a MySQL lekérdezés. Megfontolás tárgyává kell alapul my_sql_table menetrend:
1. Táblázat hozzáadása my_sql_table middle_name mező (MI), miután a névre:

$ Query = „ALTER TABLE` my_sql_table` ADD` middle_name`
VARCHAR (50) NOT NULL UTÁN `surname`";

2. Vegye ki a névre területén my_sql_table táblázat:

$ Query = "ALTER TABLE` my_sql_table` DROP` surname`";

3. Törölje a rekordokat egy asztal neve my_sql_table Sidorov:

$ Query = "DELETE FROM` my_sql_table` ahol névre = 'Sidorov";

4. Amellett, hogy egyenlő jelek, például a „több” vagy „kevesebb”, van a „hasonló” a nyelv a MySQL lekérdezés. Válasszon egy felvételt my_sql_table asztalnál, ahol a nevek található „dor”:

$ Query = "SELECT * FROM` my_sql_table` ahol eredetű, mint a" %% dor";

Itt a jelenléte a „%” az elején és a végén a „dor”, és azt jelenti, hogy a lekérdezés megkeresi ez dor ", nem számít, ha az elején, végén, vagy a középső neve is van. Tekintsük a következő példát
5. Válasszon ki egy bejegyzést a táblázatból my_sql_table vezetéknévvel, ami kezdődik P. Megjegyzés a helyét „%”:

$ Query = „SELECT * FROM` my_sql_table` ahol eredetű like '% U'„;

6. Mi számítani a maximális értékét id:

$ Query = "SELECT MAX (id) FROM` my_sql_table`";

7. Mi kiszámításához a mezők száma my_sql_table vezetéknévvel, ami kezdődik P.

$ Query = „SELECT COUNT (*) FROM` my_sql_table` ahol eredetű like '% U'„;

8. Vegye my_sql_table táblázat:

$ Query = "DROP TABLE` my_sql_table`";

Mert lekérdezések 1-3 PHP egyszerűen végre a lekérdezést: