- MySQL je databázový systém používaný pre webové aplikácie
- MySQL je databázový systém, ktorý beží na serveri
- MySQL je ideálny pre malé aj veľké aplikácie
- MySQL je veľmi rýchly, spoľahlivý a ľahko použiteľný
- MySQL používa štandardné databázy typu SQL
- MySQL sa kompiluje na mnohých platformách
- MySQL je zadarmo na stiahnutie a používanie
- MySQL vyvíja, distribuuje a podporuje spoločnosť Oracle Corporation
- MySQL je pomenovaná po dcére spoluzakladateľa Montyho Wideniusa: My
Údaje v databáze MySQL sú uložené v tabuľkách. Tabuľka je kolekcia súvisiacich údajov a skladá sa zo stĺpcov a riadkov.
Databázy sú užitočné na kategorické ukladanie informácií. Spoločnosť môže mať databázu s nasledujúcimi tabuľkami:
- Zamestnanci
- Produkty
- zákazníkov
- objednávky
Databázový systém PHP + MySQL
- PHP v kombinácii s MySQL sú multiplatformové (môžete ju napríklad vyvíjať v systéme Windows a používať na platforme Unix)
Databázové dotazy
Dotaz je otázka alebo požiadavka.
Môžeme požiadať databázu o konkrétne informácie a vrátiť množinu záznamov.
Pozrite sa na nasledujúci dotaz (pomocou štandardného SQL):
SELECT LastName FROM Employees
Dotaz uvedený vyššie vyberie všetky údaje v stĺpci „Priezvisko“ z tabuľky „Zamestnanci“.
PHP Pripojenie k MySQL
PHP 5 a novšie môžu pracovať s databázou MySQL pomocou:
- Rozšírenie MySQLi („i“ znamená vylepšené)
- PDO (údajové objekty PHP)
Skoršie verzie PHP používali rozšírenie MySQL. Toto rozšírenie však bolo v roku 2012 zastarané.
Mám používať MySQLi alebo PDO?
Ak potrebujete krátku odpoveď, bola by to „Čokoľvek chcete“.
MySQLi aj PDO majú svoje výhody:
PDO bude fungovať na 12 rôznych databázových systémoch, zatiaľ čo MySQLi bude fungovať iba s databázami MySQL.
Takže, ak musíte zmeniť svoj projekt na používanie inej databázy, PDO tento proces zjednoduší. Stačí zmeniť reťazec pripojenia a niekoľko otázok. S MySQLi budete musieť prepísať celý kód – vrátane dotazov.
Oba sú objektovo orientované, no MySQLi ponúka aj procedurálne API.
Obe podporujú pripravené vyhlásenia. Pripravené príkazy chránia pred SQL injection a sú veľmi dôležité pre bezpečnosť webových aplikácií.
Príklady MySQL v syntaxi MySQLi aj PDO
V tejto a v nasledujúcich kapitolách demonštrujeme tri spôsoby práce s PHP a MySQL:
- MySQLi (objektovo orientované)
- MySQLi (procedurálna)
- CHOP
Inštalácia MySQLi
Pre Linux a Windows: Rozšírenie MySQLi sa vo väčšine prípadov automaticky nainštaluje, keď je nainštalovaný balík php5 mysql.
Podrobnosti o inštalácii nájdete na: http://php.net/manual/en/mysqli.installation.php
Inštalácia PDO
Podrobnosti o inštalácii nájdete na: http://php.net/manual/en/pdo.installation.php
Otvorte pripojenie k MySQL
Aby sme mohli pristupovať k údajom v databáze MySQL, musíme byť schopní pripojiť sa k serveru:
Príklad (Objektovo orientované MySQLi)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
// Create connection
$conn = new mysqli($servername, $username, $password);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
?>
Príklad (Procedúra MySQLi)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
// Create connection
$conn = mysqli_connect($servername, $username, $password);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
?>
Príklad (CHOP)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
try {
$conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);
// set the PDO error mode to exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Connected successfully";
} catch(PDOException $e) {
echo "Connection failed: " . $e->getMessage();
}
?>
Zatvorte pripojenie
Po skončení skriptu sa pripojenie automaticky ukončí. Ak chcete pripojenie predtým ukončiť, použite nasledovné:
Objektovo orientované MySQLi:
$conn->close();
Postup MySQLi:
mysqli_close($conn);
CHOP:
$conn = null;
