Archív Inet.sk Pôvodný autor: Rasťo Turek
17. 02. 2004 o 00:00 27733x

Ako na MySQL: časť prvá

Skôr, ako sa pustíme do seriálu „Ako na ...“ je nutné vysvetliť základy mysql, keďže bolo mnoho otázok o tom, čo je mysql, ako ho používať a podobne. MySQL je skutočne kvalitný databázový stroj, ktorý spracováva databázy a výsledky zasiela inému programu. Všetko si vysvetlíme počas dvoch možno až troch dieloch, záleží na tom, aké dlhé budú jednotlivé články.
Ako na MySQL: časť prvá

Inštalácia
Teda keď začneme od začiatku, tak MySQL je hojne využívaný kvôli jeho absolútnej jednoduchosti, rýchlosti spracovania údajov a požiadaviek a v poslednom rade kvôli tomu, že je zadarmo. Teda toto robí s MySQL veľmi silný a účinný nástroj pri vytváraní kvalitných aplikácií a to nielen v php, ale aj v asp, js, delphi, c-ku a mnohých ďalších jazykoch. Samozrejme, že my sa zaoberáme php a teda nejdem tu opisovať, čo dokáže mysql s inou aplikáciou. Php obsahuje v takmer všetkých verziách podporu mysql a tá je implementovaná, teda nemusíte po inštalácii pridávať žiadne moduly, nič zapínať, proste ide. Ak chcete mať mysql, apache, php a phpMyAdmin hneď po kope bez nutnosti nastavenia, stiahnite si Php Home Edition na www.php.sk. Viac nájdete v článku „Čo Vás knihy nenaučia“. Ak máte všetko nainštalované tak ako má byť, je dobre si databázu najskôr trošku prezrieť a teda sa pozrieť na to, ako funguje jej záznamy a ako sa pridávajú alebo odoberajú. Nechcem sa baviť o príkazoch priamo pre mysql, ale ako sa používajú už priamo v php.

Pripojenie
V prvom rade musíte mať script na pripojenie. S týmto scriptom sme sa už stretli v mojom predošlom článku, kde sme vypisovali tipy do stránky. Avšak ja ho napíšem ešte raz a popíšem ho. Tento script je možné napísať dvoma spôsobmi. Prvý je priamo script a teda jednoducho ho naimportujete do scriptu a bude fungovať. Druhý spôsob je ho napísať ako funkciu, čo už väčšinou využívajú programátori pre zložitejšie scripty, kde potrebuje volať funkciu a predať jej parameter, ako napríklad meno databázy. To všetko si však ukážeme.

Prvý spôsob:

if (!@$spojenie = MySQL_Connect("server", "user", "password")):
    echo "Nepodarilo sa pripojiť k databáze!";
    die;
endif;
if (!@$select = MySQL_Select_Db("databaza")):
    echo "Chyba pri výbere databáze!";
    die;
endif;

Teda vytvoríme si podmienku na pripojenie k databáze a overíme, či sa spojenie podarilo. Ak áno, pokračujeme bez problémov a vyberieme databázu, v ktorej budeme mať svoje tabuľky. Ak sa nám to nepodarilo, tak vypíšeme do stránky chybu. Teraz vysvetlím, čo sú to za hodnoty, ktoré voláme vo funkciách MySQL_Connect a MySQL_Select_Db:

- server – linka, kde beží mysql, väčšinou je to localhost, niekedy aj priamo linka ako napríklad db.lammer.sk
- user – meno užívateľa pre pripojenie k mysql
- password – heslo užívateľa pre pripojenie k mysql
- databaza – tu zadáte databázu, v ktorej budete mať svoje údaje

Asi by bolo dobré vysvetliť aj ako mysql funguje. Jednoducho mysql ako každý databázový stroj obsahuje niekoľko druhov úložišť pre Vaše dáta. Úplne nadradená je databáza. Tá môže obsahovať x tabuliek a každá tabuľka môže obsahovať y dát. Teda spravidla ak si objednáte webhosting, dostanete len jednu databázu, do ktorej si môžete ukladať svoje dáta do tabuliek. Takže ďalšou jednotkou je tabuľka, ktorá vytvorí pre ukladanie dát akési pravidla, teda príkladom:

CREATE TABLE inet(
id int(8) auto_increment,
name varchar(250) not null,
pass varchar(250) not null,
PRIMARY KEY id(id)
) TYPE = MyISAM;

Teda si predstavte, že týmto poviete mysql asi toto:

Vytvor tabuľku inet, ktorá bude obsahovať riadok stĺpec id s príznakom číslo, ktoré pri doplnení dát do tabuľky zdvihne číslo vždy x+1, kde x je aktuálne číslo id. Ďalej vytvor stĺpec name s príznakom reťazec o dĺžke znakov 250, do ktorého musia byť vždy zapísane dáta, čo zabezpečuje parameter not null. Ďalej vytvor stĺpec pass s rovnakými vlastnosťami ako stĺpec name. Vytvor primárny kľúč, ktorý pomáha pri rýchlejšom vyhľadávaní. Nakoniec priraď tabuľke typ, ktorým je MyISAM.

Takto sa interpretuje príkaz mysql a ten založí tabuľku inet s parametrami aké ste udali. Poďme si ukázať aj druhý spôsob:

Druhý spôsob:

Function pripoj()
{
     if (!@$spojenie = MySQL_Connect("server", "user", "password")):
          echo "Nepodarilo sa pripojiť k databáze!";
     die;
     endif;
     if (!@$select = MySQL_Select_Db("databaza")):
          echo "Chyba pri výbere databáze!";
          die;
     endif;
}

Tento spôsob je o to lepší, že si môžete funkciu zavolať tam, kde potrebujete a teda môžete lepšie ovládať celý beh scriptu. Ale jednou z najväčších výhod je asi to, že môžete vkladať dáta pri volaní funkcie. Tu je už tak upravený script aby načítaval dáta až po zavolaní funkcie a až po vložení potrebných dát. Tu je už spomínaný script:

$server = “server”;
$user = “user”;
$password = “password”;
$databaza = “databaza”;


Function pripoj($server, $user, $password, $databaza)
{
     if (!@$spojenie = MySQL_Connect("$server", "$user", "$password")):
          echo "Nepodarilo sa pripojiť k databáze!";
          die;
     endif;
     if (!@$select = MySQL_Select_Db("$databaza")):
          echo "Chyba pri výbere databáze!";
          die;
    endif;
}

Keby ste teraz kdekoľvek zavolali funkciu pripoj(), tak by Vám tak by sa nič nestalo. Poďme si ukázať, ako by sme zavolali funkciu v prvom prípade a v druhom prípade.


V prvom prípade:

pripoj();


V druhom prípade:

$server = “server”;
$user = “user”;
$password = “password”;
$databaza = “databaza”;

pripoj($server, $user, $password, $databaza);

Keď si to preberieme zistíte, že je to úplne jednoduché. Teda v prvom prípade stačí zavolať len funkciu a netreba jej predávať žiadne dáta a funkcia bude vykonaná. V druhom prípade však musíte predať najskôr dáta a až potom sa funkcia prevedie. V prvom prípade sa však dáta nedajú vložiť mimo funkcie a teda musíte vložiť dáta priamo do funkcie. V druhom prípade síce musíte dáta najskôr vložiť, ale nemusíte ich vkladať do funkcie, teda premenné môžete mať mimo scriptu pre pripojenie. Tento spôsob využívajú všetky open-source produkty, aby mohli všetky premenné dať do jedného konfiguračného súboru, ktorý si už užívateľ nastaví sám.


Najpoužívanejšie príkazy pre MySQL


mysql_affected_rows -- Zistí počet riadkov, ktoré boli ovplyvnené predchádzajúcou operáciou.
mysql_change_user – Zmení užívateľa pri aktuálnom pripojení
mysql_client_encoding -- Vráti názov použitej znakovej sady
mysql_close -- Ukončí pripojenie k serveru MySQL
mysql_connect -- Ustanoví pripojenie k serveru MySQL
mysql_create_db – Vytvorí novú databázu
mysql_data_seek – Presúva interný ukazovateľ výsledku
mysql_db_name – Vyberie názov databázi
mysql_db_query – Posiela MySQL požiadavku SQL spolu s aktívnym názvom databáze
mysql_drop_db – Vymaže databázu MySQL
mysql_errno – Vracia číslo chybovej hlášky predošlej operácie
mysql_error – Vracia text chybovej hlášky predošlej operácie
mysql_fetch_array – Vracia výsledný riadok ako asociatívne pole
mysql_fetch_field – Zistí informácie o stĺpci výsledku a vracia ho ako objekt
mysql_fetch_lengths – Zistí maximálnu veľkosť dát každého stĺpca výsledku
mysql_fetch_object – Vracia výsledný riadok ako objekt
mysql_fetch_row – Vracia výsledný riadok ako pole
mysql_field_flags – Vracia príznaky odpovedajúce zadanej položke výsledku
mysql_field_len – Vracia dĺžku zadanej položky
mysql_field_name – Vracia meno zadanej položky výsledku
mysql_field_seek – Nastavuje ukazovateľ výsledku na offset zadanej položky
mysql_field_table – Vracia meno tabuľky, ktorá obsahuje zadanú položku
mysql_field_type – Vracia typ zadanej položky výsledku
mysql_free_result – Uvolní pamäť výsledku
mysql_insert_id – Vracia identifikátor výsledku generovaný predchádzajúcou operáciou INSERT
mysql_list_dbs – Vypisuje databázi dostupné na MySQL
mysql_list_fields – Vracia zoznam položiek výsledku
mysql_list_tables – Vracia zoznam tabuliek v databázi MySQL
mysql_num_fields – Vracia počet položiek výsledku
mysql_num_rows – Vracia počet riadkov výsledku
mysql_pconnect – Otvára stále spojenie zo serverom MySQL
mysql_query - Posiela MySQL požiadavku SQL
mysql_result – Vracia dáta výsledku
mysql_select_db – Vyberie databázu MySQL
mysql_tablename – Získava názov tabuľky alebo databáze z identifikátora výsledku


Myslím, že toto už nadnes stačilo. Podľa týchto základov sa môžete aspoň čiastočne zorientovať v problematike databázového stroja MySQL.

Prajem všetkým veľa úspechov pri kódovaní nových kvalitných aplikácií.

Rastislav Turek // lammer.sk

Novinky a inšpirácie

Z nášho blogu

Prečítajte si novinky, inšpirácie a dôležité informácie zo sveta webhostingu a technológií.

Gmail končí s funkciou „Odoslať ako“ pre cudzie e-mailové adresy. Čo to znamená pre vás? Oznamy
01. 10. 2026

Gmail končí s funkciou „Odoslať ako“ pre cudzie e-mailové adresy. Čo to znamená pre vás?

Google oznámil, že v januári 2027 zruší v Gmaile funkciu „Odoslať ako“ (Send as) pre e-mailové adresy od iných poskytovateľov. Ak ste si ...

Čítať viac
Večerná „prestávka“ pre server VIP033 Oznamy
25. 09. 2026

Večerná „prestávka“ pre server VIP033

Neustále pracujeme na tom, aby vaše weby bežali hladko, rýchlo a bezpečne. Technológie idú míľovými krokmi vpred a my v Inet.sk s nimi dr...

Čítať viac
Novinky na Inet.sk (09 / 2026) Novinky
09. 09. 2026

Novinky na Inet.sk (09 / 2026)

Posledné mesiace sme v Inet.sk nevenovali len stabilite serverov, ale najmä počúvaniu vašich reálnych skúseností z každodennej praxe. Výs...

Čítať viac
Plánovaná údržba v datacentre (20.09.2026) Oznamy
07. 09. 2026

Plánovaná údržba v datacentre (20.09.2026)

Stabilita a nepretržitá dostupnosť vašich webov je pre nás kľúčová. Aby sme tento štandard nielen udržali, ale neustále zvyšovali, naši p...

Čítať viac

Podpora klientom

Máte ďalšie otázky?

Nezúfajte, pripravili sme pre Vás jednoduché odpovede na najdôležitejšie otázky, ktoré od našich klientov dostávame.

Zistiť viac

Naše výhody

Prečo si nás vybrať?

Našim klientom ponúkame až 30-dňovú záruku vrátenia peňazí.

Sme skutočný slovenský webhosting

Slovenská
firma

Nepatríme pod žiadnu nadnárodnú spoločnosť, sme malá rodinná firma.

Na nás sa môžete kedykoľvek spoľahnúť

Dlhoročné
skúsenosti

Na slovenskom trhu pôsobíme už viac ako 20 rokov, sme overená značka.

Naši prví zákazníci sú stále s nami

Spokojní
zákazníci

Naši zákazníci sú ako naša rodina, preto nám verí už viac ako 1250 klientov.

Maximálna bezpečnosť

Maximálna
bezpečnosť

Chránime Vás pred útokmi i SPAMom. U nás sú Vaše dáta v bezpečí.

Prozákaznícka podpora

Ochotná
podpora

Zakladáme si na individuálnom prístupe, preto Vám vždy radi pomôžeme.

Kvalita a dobrá cena

Férová
cena

Cena pri obnove je rovnaká ako pri objednávke. Nezdražujeme po prvom roku a bez skrytých poplatkov.

U nás sa Vám nič nestratí

Pravidelné
zálohovanie

Vaše dáta zálohujeme každý deň, dostupné sú aj zálohy z pred niekoľkých mesiacov.

Svižný Admin Panel nájdete len u nás

Prehľadný
Admin Panel

Máme rýchly a prehľadný Admin Panel, ktorý zvládne používať naozaj každý.

Správa používateľov

Správa
používateľov

Spravujte svoje projekty bez akýchkoľvek obáv s kolegami alebo externými partnermi.

Máme zľavy pre verných klientov

Vernostné
zľavy

Verní klienti u nás automaticky získavajú 15 % zľavu na každú ďalšiu objednávku.

My Vás nebudeme obmedzovať

Bez
obmedzení

Neobmedzujeme počet databáz, e-mailov, ftp a ani prenos dát.

Hosting pre WordPress

WordPress
na 1 klik

Nainštalujte si obľúbené redakčné systémy rýchlo a jednoducho.

Referencie

Spokojní zákazníci

Pozrite sa, čo o nás povedali naši klienti. Neváhajte a pridajte sa k nám ešte dnes.

Auto 100
Bystricoviny
eCall Slovakia
Filip Jančík
Frost
Merkury Broker
Mi:Su Design
Mesto Nitra
Pro Clienta
Schneider Lekáreň
Vego Marketing
Mesto Zlaté Moravce

Všetky ceny sú uvádzané bez DPH
© 2006 - 2026, Inet.sk, s. r. o., Všetky práva vyhradené

Na našej stránke používame "cookies". Vďaka nim sledujeme návštevnosť, prispôsobujeme reklamu a používateľské nastavenia, čo zlepšuje Váš zážitok z našej stránky. Súhlasíte s ich spracovaním?
Vlastné nastavenia cookies