PHP a MySQL

21
PHP a MySQL Boris Žolna 3.A

description

PHP a MySQL. Boris Žolna 3.A. História. r.1994-bolo vytvorené PHP. Jeho autor je Rasmus Lendorf. r.1995-k PHP bol pridaný program Form interpreter – PHP/FI 2,0. r.1997-Zeev Suraski a Andi Gutmans prepísali syntaktický analyzátor (parser) ktorý sa stal základom novej verzie PHP3. - PowerPoint PPT Presentation

Transcript of PHP a MySQL

Page 1: PHP a MySQL

PHP a MySQL

Boris Žolna

3.A

Page 2: PHP a MySQL
Page 3: PHP a MySQL

História• r.1994-bolo vytvorené PHP. Jeho autor je Rasmus Lendorf.• r.1995-k PHP bol pridaný program Form interpreter – PHP/FI 2,0.• r.1997-Zeev Suraski a Andi Gutmans prepísali syntaktický analyzátor

(parser) ktorý sa stal základom novej verzie PHP3.• r.1998-bolo vydané PHP3 a zmenený názov na hypertext procesor. • r.1999-Zeev Suraski a Andi Gutmans prepísali jadro PHP a nazvali ho

Zend Engine a založili spoločnosť Zend technologies , ktorá sa od vtedy podieľa na vývoji PHP.

Page 4: PHP a MySQL

História• r.2000-PHP4 s jadrom Zend Engine 1• r.2004-PHP5 s jadrom Zend Engine 2• r.2007-aktuálna verzia PHP5 je 5.2.1

Rasmus Lendorf Andy Gutmans Zeev Suraski

Page 5: PHP a MySQL

PHP v skratke• Je to skriptovací jazyk predovšetkým určený na vytváranie

dynamických stránok• Syntax jazyka v sebe kombinuje jazyky (Perl, C, Pascal, Java) • Veľmi dobre pracuje s relačnými databázami (MySQL, Oracle,

IBM DB2, PostgreSQL, SQLite, Microsoft SQL Sever)• Beží na všetkých platformách (Windows, Linux, UNIX, Mac OS

X)• PHP sa dá použiť aj pri tvorbe konzolových a desktopových

aplikácii• Najznámejším programom na tvorbu skriptov PHP je Zend

Studio ktorého tvorcovia sú tvorcami PHP jazyka.• Najnovšia verzia podporuje OOP

Page 6: PHP a MySQL

Ako to funguje?

• Klient odošle požiadavku nejakého PHP skriptu na server ten ju spracuje a odošle klientovi čistý HTML kód.

Server

Klient

Page 7: PHP a MySQL
Page 8: PHP a MySQL

História• MySQL je databázový systém vytvorený v roku 1995 firmou MySQL

AB. Hlavnými autormi sú Michael Widenius a David Axmark.• 1998-verzia pre Windows• 2000-verzia 3.23• 2002-verzia 4.0• 2004-verzia 4.1• 2005-verzia 5.0

Michael Widenius David Axmark

Page 9: PHP a MySQL

Info• MySQL je databázový systém ktorý je k dispozícii v bezplatnej

licencii GPL ako aj v komerčne platenej licencii.• Pretože je ľahko inštalovateľná (ide pod Linuxom aj Windowsom) je

často nasadzovaná spolu s Apachom a PHP. Pre vysokú obľúbenosť sa zaužívala skratka LAMP (Linux, Apache, MySQL, PHP)

• MySQL kladie dôraz na rýchlosť preto bola do nedávna ukrátená o niektoré vlastnosti.

• Asi najznámejší program na tvorbu databáz je phpMyAdmin.

Page 10: PHP a MySQL

Slovník pojmov• Entity - sú to veci v reálnom svete o ktorých uchovávame v databázy

informácie.

• Relácia - relácie predstavujú odkazy medzi entitami. Relácia je vlastne tabuľkou dát.

• Stĺpce - popisujú určitú časť dát, ktorú má každý záznam v tabuľke.

• Riadky – každý riadok v tabuľke je zložený z hodnoty pre každý stĺpec v tabuľke.

• Primárny kľúč – je to stĺpec pomocou ktoré vieme určiť jeden riadok v tabuľke.

• Cudzí kľúč – predstavuje odkaz medzi tabuľkami.

Page 11: PHP a MySQL

Typy relácii• Relácia 1:1 (one-to-one) – každý riadok

primárnej tabuľky je (môže byť) viazaný s jedným riadkom sekundárnej tabuľky.

• Relácia N:1 (many-to-one) – každý riadok primárnej tabuľky je (môže byť) viazaný s jedným či viac riadkami sekundárnej tabuľky.

• Relácia N:M (many-to-many) – viac riadkov primárnej tabuľky sú viazané s viacerími riadkami sekundárnej tabuľky.

Page 12: PHP a MySQL

Normalizácia• Je proces s pomocou ktorého sa dá zbaviť štruktúrnych chýb.• Je súhrnom niekoľkých normálových foriem čo sú pravidlá aká

by mala a nemala byť štruktúra našich tabuliek.• Nultá normálová forma (0NF)• Prvá normálová forma (1NF)• Druhá normálová forma (2NF)• Tretia normálová forma (3NF)• Štvrtá normálová forma (4NF)• Piata normálová forma (5NF)

Page 13: PHP a MySQL

Typy tabuliek• MyISAM

• InnoDB

• BDB

• MERGE

• HEAP

Page 14: PHP a MySQL

MyISAM• Tabulky MyISAM sú nastavené ako

predvolené• Veľmi rýchli prístup k dátam• Transakčne nebezpečné úložište dát • Rozdeľujeme ich na: statické, dynamické,

komprimované

Page 15: PHP a MySQL

InnDB• Podpora transakcii • Rýchli mechanizmus ukladania dát• Uzamykanie na úrovni riadku • Podpora cudzích kľúčov

Page 16: PHP a MySQL

BDB• Podpora transakcii• Uzamykanie na úrovni stránky• Horší výkon ako InnDB• Musí mať primárny kľúč• Nemožnosť premiestňovať dáta na iné

miesto na disku

Page 17: PHP a MySQL

MERGE• Tabuľky MERGE predstavujú šikovný

spôsob ako obísť obmedzenia operačného systému na maximálnu veľkosť súboru. Pretože je každá tabuľka MyISAM uložená v jednom súbore je jej maximálna veľkosť obmedzená OS. Pomocou tabuliek MERGE môžeme spracovať viac tabuliek MyISAM ako jednu.

Page 18: PHP a MySQL

HEAP• Ukladajú sa iba do pamäti RAM preto treba

ich veľkosť obmedziť• Dáta v nich nie sú trvalé. V prípade výpadku

prúdu budú zmazané• Sú výnimočne rýchle ak je pre nich dostatok

pamäti• Nepodporujú stĺpce AUTO_INCREMENT,

TEXT, BLOB

Page 19: PHP a MySQL

Typy stĺpcov• Číselné: numeric, decimal, integer, float,

double.• Reťazcové: char, varchar, text, blob.

num, set.• Typy DATE a TIME: date, time, datetime,

timestamp, year.

Page 20: PHP a MySQL

Základné príkazy• SELECT – vyberá dáta z tabuliek• INSERT – vloží nový riadok do tabuľky• UPDATE – upraví dáta už v existujúcom

riadku• DELETE – vymaže vybrané riadky

Page 21: PHP a MySQL

KONEC