Databázové systémy Přístup k databázím z WWW. Síť WWW je v současné době místem pro dynamické, často databázemi řízené webové aplikace. Tvorba webového.

Slides:



Advertisements
Podobné prezentace
Přístup k databázím z WWW
Advertisements

Přístup k databázím z WWW
HYPERTEXT PREPROCESSOR. JAZYK PHP. Jazyk PHP (Hypertext PreProcessor) je intepretovaný jazyk určený pro web. Je celkem jednoduchý, snadno přenositelný.
Aplikační a programové vybavení
 Informací se data a vztahy mezi nimi stávají vhodnou interpretací pro uživatele, která odhaluje uspořádání, vztahy, tendence a trendy  Existuje celá.
Přednáška č. 5 Proces návrhu databáze
Architektury a techniky DS Tvorba efektivních příkazů I Přednáška č. 3 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
PROGRAMOVACÍ JAZYKY (c) Tralvex Yeap. All Rights Reserved.
SQL Lukáš Masopust Historie  Předchůdcem databází byly papírové kartotéky  děrný štítek  1959 konference  1960 – vytvořen jazyk COBOL.
SQL Lukáš Masopust Historie  Předchůdcem databází byly papírové kartotéky  děrný štítek  1959 konference  1960 – vytvořen jazyk COBOL.
Adobe Dreamweaver CS4 Ing. Martin Dosedla.
Tvorba webových aplikací
Databáze Jiří Kalousek.
MySQL - Vytvoření nové tabulky  create table jméno_tabulky (jméno_položky typ_položky,... ) Přehled nejběžnějších datových typů Přehled nejběžnějších.
PROGRAMOVÁNÍ V PHP PERSONAL HOME PAGES. 2 PHP JE SKRIPTOVACÍ JAZYK PRO TVORBU DYNAMICKÉHO WEBU A JEHO POČÁTKY SPADAJÍ DO ROKU HISTORIE PAN RASMUS.
Školení správců II. Petr Pinkas RNDr. Vít Ochozka.
Architektura databází Ing. Dagmar Vítková. Centrální architektura V této architektuře jsou data i SŘBD v centrálním počítači. Tato architektura je typická.
PHP – Základy programování
Relační databáze.
ICQ. Co je ICQ? ICQ je nejpoužívanější a nejpopulárnější komunikační program. ICQ je zkratka slangového výrazu „I seek you“ (hledám tě). Slouží ke komunikaci.
Vypracoval: Ondřej Dvorský Třída: VIII.A
KIV/ZIS cvičení 6 Tomáš Potužák. Pokračování SQL Klauzule GROUP BY a dotazy nad více tabulkami Stáhnout soubor studenti_dotazy_sql.mdb.
Maturitní okruh 22: Úvod do HTML. Značkovací a klasické jazyky Klasické: převládá strukturovaný text (programovací kód), skripty jsou prováděny na straně.
Jazyk PHP Programovací jazyk PHP (Hypertext preprocessor) je skriptovací jazyk, který běží na straně serveru. KLIENT - SERVER Server posílá do vašeho počítače.
Číslo šablony: III/2 VY_32_INOVACE_P4_3.8 Tematická oblast: Aplikační software pro práci s informacemi II. Databáze – základy SQL Typ: DUM - kombinovaný.
Návrh a tvorba WWW Přednáška 5 Úvod do jazyka PHP.
Databázové systémy I Cvičení č. 8 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
Architektury a techniky DS Cvičení č. 9 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Dynamické dokumenty na straně serveru Informatika pro ekonomy II přednáška 8.
Databázové systémy II Přednáška č. 9. Transakce je logická jednotka práce sestávající z jednoho nebo více SQL příkazů, které jsou atomické z hlediska.
AJAX nejmodernější webová technologie… seminář pro učitele ZŠ a SŠ Mgr. Marek Osuchowski Ostravská univerzita © 2011.
Úvod do JavaScriptu JavaScript je p JavaScript je programovací jazyk, který se používá na webových stránkách. JavaScript je typu KLIENT - KLIENT To znamená,
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_01B16 Autor Ing. Jiří Kalousek Období vytvoření březen.
PHP PHP a MySQL - 15 Mgr. Josef Nožička IKT PHP
Copyright (C) 2000 Vema, a. s.1 V3 klient Michal Máčel Provozní integrace G2, HR/Win a internetu.
uložené procedury (stored procedures) triggery, sekvence, pohledy, funkce, parametrické dotazy (prepared statements) komplexní agregace a SQL dotazy jiné.
Elektronický registr oznámení Zpracoval(a): Mgr. František Rudecký
Aplikační programy, programovací jazyky, formáty datových souborů
Access Vysvětlení pojmu databáze - 01
Základy syntaxe jazyka PHP PHP JE TECHNOLOGIE BĚŽÍCÍ NA SERVERU. PHP JE TECHNOLOGIE BĚŽÍCÍ NA SERVERU. Typický PHP skript obsahuje: Typický PHP skript.
Aplikační a programové vybavení
PHP PHP - úvod - 02 Mgr. Josef Nožička IKT PHP
Vzdálené počítačové sítě a programování v prostředí Windows Okruhy ke zkoušce z předmětu: Ing. Zdeněk Votruba LVALVA.
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_01B13 Autor Ing. Jiří Kalousek Období vytvoření březen.
Databázové systémy 2 Cvičení č. 5 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Programování POCSI. Programovani/POCSI2 Základní pojmy Akce - děj nad objekty, mající začátek a konec, a mající přesně definovaný účinek. Příkaz - popis.
Přístup k databázím z WWW PHP+MySQL. Síť WWW je v současné době místem pro dynamické, často databázemi řízené webové aplikace. Tvorba webového serveru.
Microsoft SQL server Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí.
Delphi a databáze MS SQL Server.
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_01B15 Autor Ing. Jiří Kalousek Období vytvoření březen.
PHP Programy pro tvorbu WWW stránek - 01
Jan Růžička, Leden /01/05 Proč pro prezentaci prostorových dat využívat nástrojů WWW Nízké náklady na vybavení klientského počítače Snadné zvýšení.
Databázové systémy I Cvičení č. 8 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2015.
JavaScript úvod. Jazyky webového vývojáře Dynamická stránka  aktivně mění svůj obsah v reakci na činnost uživatele  zpracování na straně serveru (PHP,
HYPERTEXT PREPROCESSOR. JAZYK PHP. VYUŽITÍ JAZYKA Programování dynamických internetových stránek a webových aplikací vytvoření šablony webu kniha návštěv.
Informatika (1) Počítač - základní pojmy HW a SW4 OS MS-DOS, Windows 95, 982 Org. souborů na disku, operační paměť2 Aplikace Malování, Word8 Základy programování.
Klient pro správu databází MySQL 1 Klient pro správu databází MySQL Zbyněk Munzar České vysoké učení technické v Praze Fakulta elektrotechnická.
24 Používání relačních databází (základní pojmy a principy z oblasti relačních databází, struktura databáze,oblasti použití relačních databází, vkládání.
Dynamická webová aplikace Autor:Ondřej Soukup Třída:I3.
Jak fungují webové stránky Úvod do HTML (1). Projekt: CZ.1.07/1.5.00/ OAJL - inovace výuky Příjemce: Obchodní akademie, odborná škola a praktická.
AS/400 (IBM iSeries) Úvod. Co vlastně je AS/400 (IBM i)? Aplikační systém 400 (AS/400) byl navržen jako počítač obecně použitelný v obchodním prostředí.
HYPERTEXT PREPROCESSOR. JAZYK PHP. VYUŽITÍ JAZYKA Programování dynamických internetových stránek a webových aplikací vytvoření šablony webu kniha návštěv.
NÁZEV ŠKOLY:SOŠ Net Office, spol. s r.o. Orlová Lutyně
Vlastnosti souborů Jaroslava Černá.
Databázové systémy a SQL
Vytvoření IS pro správu místností v prostředí WWW
Šablona 32 VY_32_INOVACE_038.ICT.34
Optimalizace SQL dotazů
Web Application Scanning
Přednáška 9 Triggery.
Transkript prezentace:

Databázové systémy Přístup k databázím z WWW

Síť WWW je v současné době místem pro dynamické, často databázemi řízené webové aplikace. Tvorba webového serveru pomocí statických souborů HTML je nepřijatelná. Dynamické webové prezentace jsou flexibilní výtvory s velkou kapacitou a lze je popsat spíše jako aplikace, než pouze jako stránky. K tvorbě dynamických webových aplikací slouží mnoho různých technologií. Nejčastěji se používají:  Microsoft ASP (Aktive Server Pages)  JSP (Java Server Pages)  ColdFusion  PHP

Je potřeba skloubit přednosti technologie WWW s databázovou technologii – otázka komunikace WWW a DBs Používané přístupy: 1.CGI ( Common Gateway Interface) prostředky CGI script je externí program, který je na požadavek od uživatele spuštěny WWW serverem jako samostatný proces. CGI scripty jsou často vytvářeny ve scriptovem jazyce Perl nebo v některem shellu OS Unix, z programovacich jazyku se pouziva napr. jazyk C nebo C++, Visual Basic.

2. Použití aplikace ve tvaru DLL – Dynamic Link Library - snížení režie spouštění procesů oproti CGI aplikacím 3. Vyhodnocení dokumentu na WWW serveru - formou přidaných direktiv 4. Přístup k databázím z jazyka JAVA - přímý přístup

Internet Information Server Podpora pro přístup k databázi: CGI aplikace, Internet Database Connector, Active Server Pages Skripty se vykonávají na straně serveru a provádějí před odesláním stránky klientovi - klientské a serverovské skripty lze kombinovat Zabudované objekty : Request - získání informací od uživatele. Response - zaslání informací uživateli. Server - práce s ActiveX komponentami (pro Access - ADO). Session - uchování informací o uživatelově sezení. Application - uchování informací o uživatelích dané aplikace. Active Server Pages (ASP)

Přístup k databázím z Jazyka JAVA Možnosti přístupu k databázi z prostředí jazyka Java: JDBC vložený SQL (SQLJ) - Java API pro styk s relačními databázemi, rozhraní „nízké“ úrovně - typické kroky při přístupu k databázi: Např. vytvoření spojení: Connection con = DriverManager.getConnection ("jdbc:odbc:db", "login", "password"); JDBC

Standardní způsob vkládání SQL. Zvláštnosti prostředí jazyka Java oproti hostitelským jazykům pro SQL: objektová orientace, automatická správa paměti, existence odlišitelné prázdné hodnoty (null) pro složené datové typy, binární přenositelnost, podpora pro spolupráci komponent různých výrobců SQLJ

SQLJ - vyšší úroveň statické vazby se schématem DB Důsledky: SQLJ program je kratší, možnost spojení s databází v době překladu pro typovou kontrolu, jednodušší práce s hostitelskými proměnnými, možnost použití výrazů, typování výsledků dotazů a návratových hodnot, JDBC předává hodnoty do/z SQL bez typové kontroly v době překladu, volání uložených procedur a funkcí je v SQLJ také jednodušší než v JDBC. Porovnání SQLJ s JDBC

PHP PHP – Personal Home Page. Technologii vytvořil v r Rasmus Lerdorf. PHP se označuje jako „vložený skriptovací jazyk“ – znamená to, že je-li vložen do HTML, lze jej přímo interpretovat v kódu HTML. PHP je technologie nezávislá na platformě, je určena pro servery – vše, co se v kódu PHP odehrává, se odehrává na serveru, nikoli na klientském počítači. Jazyk PHP lze používat na většině operačních systémů (Windows, Unix, Linux, Macintosh). Oficiální webovou aplikaci lze najít na stránkách

Proč používat PHP? Jazyk PHP je jedním z nejlepších kompromisů mezi tím, jak snadno jej můžou používat začátečníci a jak širokou škálu možností využití nabízí zkušeným programátorům. K přednostem technologie PHP patří výkon, stabilita, přenositelnost, těsná integrace s většinou databázových systémů a téměř neomezené možnosti rozšiřování – to vše prakticky zdarma (PHP je dodáván s veřejným zdrojovým kódem).

Jak PHP funguje? PHP je jazykem určeným pro skriptování na straně serveru – tzn. kód, který je napsán v jazyce PHP je uložen na počítači nabízejícím webové stránky návštěvníkům. Navštíví-li uživatel webovou prezentaci napsanou v jazyce PHP, načte server kód PHP a zpracuje ho podle zadaných parametrů. Server pak data odešle webovému prohlížeči, který pak s daty pracuje jako se standardními stránky HTML. Tím se liší dynamická prezentace od statické, v niž na požádání server pouze odešle data HTML do webového prohlížeče – na straně serveru nedochází k žádnému zpracování.

Jak funguje propojení PHP+MySQL? Začleněním databáze do webové aplikace lze určitá data generovaná PHP načítat z databáze MySQL. Obsah stránek přestává být statický (napevno zapsaný) a stává se flexibilním. To je pak klíčem k dynamickým webovým prezentacím.

PPHP Kklient Sserver Ppožadavek skriptu HHTM L Ppožadavek na URL adresu HHTML MySQL ddotaz ddata

Základní funkce jazyka PHP pro práci s databázemi MySQL Připojení k DB serveru a zrušení spojení mysql_connect - otevře spojení s databázovým serverem MySQL, vrací identifikátor spojení mysql_pconnect - otevře trvalé spojení s MySQL serverem (neukončuje se při ukončení skriptu ani funkcí) mysql_close() - vrací identifikátor spojení mysql_select_db - nastaví aktuální aktivní databázi pro dané spojení s databázovým serverem mysql_close - uzavře spojení s databázovým serverem MySQL

Vytvoření a zrušení databáze mysql_create_db - vytvoří databázi spravovanou serverem MySQL mysql_drop_db - zruší databázi spravovanou serverem MySQL Práce s kurzorem mysql_query - pošle zadaný příkaz současné aktivní databázi serveru MySQL, pro INSERT, UPDATE a DELETE vrací příznak úspěšnosti, pro SELECT číslo kurzoru mysql_db_query - vrátí číslo kurzoru pro zadaný dotaz pro danou databázi mysql_affected_rows - vrátí počet řádků ovlivněných posledním příkazem INSERT, UPDATE nebo DELETE mysql_fetch_array - vrátí řádek kurzoru jako asociativní pole (výběr podle jména sloupce)

Ošetření chyb mysql_errno - vrátí číslo chyby poslední operace MySQL mysql_error - vrátí text chybového hlášení poslední operace Přístup k metadatům mysql_list_dbs - vrátí kurzor obsahující seznam dostupných databází, k procházení slouží funkce mysql_tablename mysql_list_tables- vrátí kurzor obsahující seznam tabulek dané databáze, k procházení slouží funkce mysql_tablename mysql_tablename - vrátí jméno tabulky s daným pořadovým číslem prostřednictvím kurzoru vráceného funkcí mysql_list_tables mysql_fetch_field - vrátí objekt, který nese informaci o daném sloupci daného kurzoru mysql_field_seek - nastaví ukazatel kurzoru na daný sloupec mysql_field_name - vrátí jméno daného sloupce kurzoru …

Připojení a výběr databáze mysql_connect( [string server [, string uziv_jmeno [, string heslo [, bool nove_spojeni [, int nastaveni_klienta]]]]]) mysql_select_db ( string jmeno_databaze [, resource spojeni]) <?php # mysql_spojit.php // Vytváření připojení k serveru MySQL $spojeni = mysql_connect ('localhost','root','root'); // Výběr pracovní databáze mysql_select_db ('studijni_agenda'); ?>

Nebo pomocí definice konstant <?php # mysql_spojit.php //Vytvoření připojení k serveru MySQL a vyběr pracovní databáze. // Nastavte informace pro přístup k databázi jako konstanty. DEFINE ('DB_UZIVATEL', 'root'); DEFINE ('DB_HESLO', 'root'); DEFINE ('DB_HOSTITEL', 'localhost'); DEFINE ('DB_DATABAZE', 'studijni_agenda'); // Připojení a výběr pracovní databázi. $spojeni = mysql_connect (DB_HOSTITEL, DB_UZIVATEL, DB_HESLO); mysql_select_db (DB_DATABAZE); ?>

Ošetření chyb mysql_errno ( [resource spojeni]) mysql_error ( [resource spojeni]) <?php mysql_connect("localhost", "root", "root"); mysql_select_db("neexististujicidb"); echo mysql_errno(). ": ". mysql_error(). "\n"; mysql_select_db("databaze"); mysql_query("SELECT * FROM neexististujicitabulka"); echo mysql_errno(). ": ". mysql_error(). "\n"; ?> Předchozí příklad by zobrazil následující výstup: 1049: Unknown database 'neexististujicidb' 1146: Table 'databaze.neexististujicitabulka' doesn't exist

Zpouštění dotazů mysql_query ( string query [, resource spojeni]) // Sestavte dotaz. $dotaz = "SELECT CONCAT(prijmeni, ' ', jmeno) AS jmeno, rod_cislo, obor, DATE_FORMAT(datum_zapisu, '%d.%m.%Y') AS datum FROM student ORDER BY prijmeni"; $vysledek ($dotaz); // Spusťte dotaz.

Načtení výsledků dotazů mysql_fetch_array ( resource výsledek [, int result_type]) $dotaz = mysql_query("SELECT id, jmeno FROM Student"); while ($zaznam =mysql_fetch_array($dotaz)) { echo $zaznam["id"]; echo $zaznam["jmeno"]; } mysql_free_result($dotaz); mysql_fetch_row ( resource výsledek [, int result_type]) $dotaz = mysql_query("SELECT id, jmeno FROM Student"); while ($zaznam =mysql_fetch_row($dotaz)) { echo $zaznam[0]; echo $zaznam[1]; } mysql_free_result($dotaz);