Návrh a tvorba WWW stránek 1/14. PHP a databáze



Podobné dokumenty
Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava

Databáze I. Přednáška 4

Databázové systémy. - SQL * definice dat * aktualizace * pohledy. Tomáš Skopal

Inovace a zkvalitnění výuky prostřednictvím ICT. Základní seznámení s MySQL Ing. Kotásek Jaroslav

Změny v Tabulce ALTER TABLE nazev_tabulky prikaz1, prikaz2, prikaz3,..., prikazn; -provede změny ve stávající tabulce s názvem "nazev_tabulky"

Sada 1 - PHP. 14. Úvod do jazyka SQL

Databázové systémy Cvičení 5.2

Informační systémy 2008/2009. Radim Farana. Obsah. Jazyk SQL

MySQL manuál. Copyright: Adam Jun Stránky manuálu:

B0M33BDT Technologie pro velká data. Supercvičení SQL, Python, Linux

2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE

MySQL. mysql> CREATE DATABASE nova CHARACTER SET latin2 COLLATE latin2_czech_cs; Query OK, 1 row affected (0.02 sec)

Kurz Databáze. Obsah. Dotazy. Zpracování dat. Doc. Ing. Radim Farana, CSc.

Použití databází na Webu

Inovace a zkvalitnění výuky prostřednictvím ICT Databázové systémy MySQL základní pojmy, motivace Ing. Kotásek Jaroslav

Databázové systémy. Cvičení 6: SQL

Univerzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 10.4.

Databáze 2011/2012 SQL DDL (CREATE/ALTER/DROP TABLE), DML (INSERT/UPDATE/DELETE) RNDr.David Hoksza, Ph.D.

Univerzita Pardubice. Centrální správa dokumentů

InnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) CSV v textovém souboru ve formátu hodnot oddělených čárkou

Databáze. Velmi stručný a zjednodušený úvod do problematiky databází pro programátory v Pythonu. Bedřich Košata

Jazyk SQL databáze SQLite. připravil ing. petr polách

5. POČÍTAČOVÉ CVIČENÍ

SQL v14. 4D Developer konference. 4D Developer conference 2015 Prague, CZ Celebrating 30 years

Úvod do databázových systémů

Měřící systém se vzdáleným přístupem. Databáze

DUM 12 téma: Příkazy pro tvorbu databáze

Informační systémy 2008/2009. Radim Farana. Obsah. Dotazy přes více tabulek

DATABÁZE TABULKY. Nastavení aktivní databáze. Výpis seznamu tabulek v databázi. Vytvoření tabulky. Výpis popisu tabulky.

7. Integrita a bezpečnost dat v DBS

7. Integrita a bezpečnost dat v DBS

6. SQL složitější dotazy, QBE

Databázové systémy a SQL

Západočeská univerzita v Plzni Katedra informatiky a výpočetní techniky. 9. června krovacek@students.zcu.cz

Semestrální práce z DAS2 a WWW

Maturitní témata z předmětu PROGRAMOVÉ VYBAVENÍ pro šk. rok 2012/2013

Vzorové příklady SQL. Tabulka: Kniha CREATE TABLE kniha (id INTEGER, název VARCHAR(50), PRIMARY KEY (id))

Databázové systémy I

Střední odborná škola a Střední odborné učiliště, Hořovice

NÁVRH A TVORBA HUDEBNÍ DATABÁZE

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

- sloupcové integritní omezení

MySQLi (objektově) Příklad vytvoření instance třídy včetně parametrů pro připojení: $mysqli = new mysqli('localhost', 'login', 'heslo', 'databaze');

Úvod do databází. Modelování v řízení. Ing. Petr Kalčev

17. července :51 z moravec@yahoo.com

Databázové systémy II. KIV/DB2 LS 2007/2008. Zadání semestrální práce

Třídy a objekty. Třídy a objekty. Vytvoření instance třídy. Přístup k atributům a metodám objektu. $z = new Zlomek(3, 5);

8.2 Používání a tvorba databází

Úvod do databázových systémů

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Klíčová slova: dynamické internetové stránky, HTML, CSS, PHP, SQL, MySQL,

MySQL sežere vaše data

KIV/ZIS cvičení 5. Tomáš Potužák

MySQL databáze - český manuál

PG 9.5 novinky ve vývoji aplikací

Databázové systémy I

Uložené procedury Úvod ulehčit správu zabezpečení rychleji

Dotazovací jazyk SQL I

Databáze I. Přednáška 7

Jazyk SQL slajdy k přednášce NDBI001

Využití OOP v praxi -- Knihovna PHP -- Interval.cz

Verzování a publikace dat na webu za pomoci PostgreSQL

4. lekce Přístup k databázi z vyššího programovacího jazyka

Konceptuální modelování a SQL

1. Relační databázový model

KMI / TMA Tvorba mobilních aplikací. 6. seminář ZS 2016/2017 Středa 13:15-15:45

Úvod do databázových systémů

FAKULTA STAVEBNÍ STUDIJNÍ PROGRAM: GEODÉZIE A KARTOGRAFIE TYP PROGRAMU: MAGISTERSKÝ STUDIJNÍ OBOR: GEOMATIKA ÚVOD DO ZPRACOVÁNÍ PROSTOROVÝCH DAT

PL/SQL. Jazyk SQL je jazykem deklarativním, který neobsahuje procedurální příkazy jako jsou cykly, podmínky, procedury, funkce, atd.

Jazyk SQL 3 - DML, DDL, TCL, DCL

Základy relačních databází, jejich využití v programování webu

Nastavení propojení s eshopem

KIV/ZIS cvičení 6. Tomáš Potužák

Programování v Pythonu

Internetová filmová databáze IFDB

Transformace konceptuálního modelu na relační

SII - Informatika. 1. Atribut relace, jehož hodnota jednoznačně určuje prvek v jiné relaci, se nazývá:

Vkládání, aktualizace, mazání

SQL. strukturovaný dotazovací jazyk. Structured Query Language (SQL)

Zápisování dat do databáze

Michal Krátký, Miroslav Beneš

Kapitola 4: SQL. Základní struktura

DATABÁZOVÉ A INFORMAČNÍ SYSTÉMY

Databázové systémy a SQL

Materiál ke cvičením - SQL

Max Communicator 9. Přístup do databáze a vyčítání hodnot měření externími aplikacemi

Embedded SQL v C/C++ úvod. Administrace Oracle Kateřina Opočenská

Zobrazování dat pomocí tabulek

Semináˇr Java X JDBC Semináˇr Java X p.1/25

INOVACE PŘEDMĚTŮ ICT. MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika

Virtuální privátní databáze

Základní přehled SQL příkazů

1 Webový server, instalace PHP a MySQL 13

Úvod do databázových systémů

SQL - trigger, Databázové modelování

Roční periodická zpráva projektu

Základy informatiky. 08 Databázové systémy. Daniela Szturcová

Operátory ROLLUP a CUBE

Kurz Databáze. Obsah. Návrh databáze E-R model. Datová analýza, tabulky a vazby. Doc. Ing. Radim Farana, CSc.

PHP a Large Objecty v PostgreSQL

Transkript:

Návrh a tvorba WWW stránek 1/14 PHP a databáze nejčastěji MySQL součástí balíčků PHP navíc podporuje standard ODBC PHP nemá žádné šablony pro práci s databází princip práce s databází je stále stejný opakované využití základ je jazyk SQL + rozšíření prostředí WinMySQLAdmin, textový režim, PhpMyAdmin

Návrh a tvorba WWW stránek 2/14 vytvoření databáze CREATE DATABASE název; vytvoření tabulky Jazyk SQL CREATE TABLE název (atribut1 typ [modifikátory], ); modifikace struktury tabulky ALTER TABLE název ADD COLUMN název typ[after FIRST]; ALTER TABLE název DROP COLUMN název; ALTER TABLE název MODIFY název nový_typ [modifik.]; ALTER TABLE název CHANGE název nový_název nový_typ]; smazání tabulky DROP TABLE název; DELETE FROM název;

Návrh a tvorba WWW stránek 3/14 vkládání záznamů do tabulky Jazyk SQL INSERT INTO název VALUES (seznam_hodnot); mazání záznamů DELETE FROM název [WHERE podmínka]; úprava záznamů UPDATE název SET atribut=hodnota [WHERE podmínka];

Návrh a tvorba WWW stránek 4/14 Jazyk SQL výběr dat SELECT nejpoužívanější a zároveň nejvariabilnější příkaz SQL jediný příkaz umožňující výběr dat z databáze čtení SELECT seznam_atributu FROM seznam_tabulek [WHERE podminky] [GROUP BY atributy] [HAVING podminky] [ORDER BY atributy] [LIMIT pocet]; většinou nepovinné části příkazů => variabilita za příkazem SELECT následuje seznam atributů, případně * dále příkaz FROM se seznamem tabulek, kterých se výběr týká podmínka WHERE omezení výsledku

Návrh a tvorba WWW stránek 5/14 Jazyk SQL výběr dat SELECT GROUP BY sumarizace podle určitého atributu HAVING BY složitější podmínky, které nelze vyjádřit WHERE ORDER BY řazení výsledků dotazu, standardně ASC LIMIT počet výsledných záznamů SELECT * FROM tabulka; SELECT jmeno,email FROM tabulka; SELECT jmeno,email FROM tabulka WHERE jmeno LIKE "J%" ORDER BY jmeno; SELECT * FROM tabulka WHERE poznamka="zaplatit" LIMIT 5

Návrh a tvorba WWW stránek 6/14 Datové typy celočíselné TINYINT, INT (INTEGER), BIGINT s pohyblivou ř. čárkou FLOAT, DOUBLE, REAL datum a čas DATE, DATETIME řetězce CHAR, VARCHAR (255) BLOB, TEXT (BLOB rozlišuje velikost písmen, 65536) výčtový typ ENUM("hodnota1,hodnota2, ") - 65535 množina SET("hodnota1,hodnota2, ") - 64

Návrh a tvorba WWW stránek 7/14 Modifikátory NOT NULL atribut je vyžadován, pokud není zadán => chyba UNIQUE všechny hodnoty ve sloupci musí být unikátní PRIMARY KEY unikátní, nesmí chybět AUTO_INCREMENT automatické zvýšení hodnoty, celočíselné DEFAULT hodnota v případě že hodnota atributu není zadána ZEROFILL zápis 0 před číslem BINARY na řetězcové typy rozlišuje velikost písmen CREATE TABLE tabulka ( id INTEGER PRIMARY KEY AUTO_INCREMENT, jmeno VARCHAR(50), poznamka TEXT); Názvy tabulek, sloupců a atributů mohou být na rozdíl od příkazů SQL case sensitive.

Návrh a tvorba WWW stránek 8/14 1. z příkazového řádku Možnosti práce s databází řádkový režim stačí samotné MySQL, bez PHP, bez webového serveru

Návrh a tvorba WWW stránek 9/14 2. PhpMyAdmin Možnosti práce s databází celá aplikace v PHP grafické rozhraní práce s databází i bez znalostí SQL

Návrh a tvorba WWW stránek 10/14 MySQL v PHP všechny funkce pro práci s databází mysql začínají mysql připojeni k databázovému serveru mysql_connect() s parametry server, username, password <? mysql_connect("localhost","dbuser","dbpass");?> uživatele lze vytvářet, nastavovat jim práva atd. funkce vrací celočíselnou hodnotu, v případě nezdaru false je vhodné při práci s databází testovat výsledek <? $spojeni = mysql_connect( ) or die ("Nepodařilo se připojit k databázovému serveru");?> mysql_pconnect() perzistentní připojení aplikace využije existující připojení, jinak vytvoří nové

Návrh a tvorba WWW stránek 11/14 MySQL v PHP výběr používané databáze (odpovídá příkazu use název_databáze) <? mysql_select_db("název") or die ("Vybraná databáze neexistuje");?> položení dotazu nejčastěji využívaná funkce mysql_query, jejíž parametrem je příkaz SQL vrací false v případě neúspěchu, většinou kvůli chybě v syntaxi v případě úspěšného provedení vrací true a nabízí funkce: - mysql_affected_rows() počet ovlivněných řádků - mysql_num_rows() počet řádků obsažených ve výsledku /* mysql_query("set character_set_client=cp1250"); mysql_query("set character_set_connection=cp1250"); mysql_query("set character_set_results=cp1250"); */

Návrh a tvorba WWW stránek 12/14 MySQL v PHP zpracování dotazu výsledek příkazů INSERT, UPDATE, DELETE není třeba dále zpracovávat (stačívědět zda byl dotaz vykonán) jinak je tomu u příkazu SELECT, který je potřeba zpracovat mysql_fetch_array() fce pro přístup k hodnotám výsledku dotazu zpřístupní vždy jede řádek výsledku dotazu v asociativním poli při každém dalším volání vrací další řádek výsledku dotazu pokud již další řádek neexistuji, vrací false využívá se ve spojení s cyklem while mysql_fetch_row() vrací běžné pole (ne asociativní), bez možnosti přístupu k jednotlivým položkám výsledku dotazu přes jejich název

Návrh a tvorba WWW stránek 13/14 MySQL v PHP zpracování dotazu <? $db = mysql_connect( ) or die("nepřipojeno"); mysql_select_db("nazev",$db); $sql = mysql_query("select * FROM users") or die("dotaz neproveden"); echo "<table style=\"border:solid 2px red;\"> <tr><td><b>jméno</b></td> <td><b>příjmení</b></td></tr>"; $zaznam = mysql_fetch_array($sql); while ($zaznam) { } echo "<tr><td>".$zaznam['jmeno']."</td> <td>".$zaznam['prijmeni']."</tr></tr>"; $zaznam = mysql_fetch_array($sgl); echo"</table>";?>

Návrh a tvorba WWW stránek 14/14 ODBC databáze v PHP ODBC databázový standard umožňující komunikaci s databází bez ohledu na její typ skripty jsou přenositelné mezi různými databázemi mezi aplikaci a databázi je vložen ovladač, který zprostředkovává obecné databázové dotazy konkrétnímu databázovému serveru instalace ovladače ODBC pro mysql na www.mysql.com funkce pro práci s ODBC jsou podobné: odbc_connect() odbc_exec() odpovídámysql_query() atd.