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



Podobné dokumenty
Databázové modelování. Analýza Návrh konceptuálního schématu

Konceptuální modelování. Pavel Tyl

Konceptuální modelování a SQL

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

Stored Procedures & Database Triggers, Tiskové sestavy v Oracle Reports

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

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

7. Integrita a bezpečnost dat v DBS

7. Integrita a bezpečnost dat v DBS

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

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

Kapitola 6: Omezení integrity. Omezení domény

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

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ázové systémy. - SQL * definice dat * aktualizace * pohledy. Tomáš Skopal

Model podnikových procesu. Model objektu. Model funkcí. Akce. Proces Objekt (trída) Událost Atribut. Akce. Akce. Funkce

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

Text úlohy. Systémový katalog (DICTIONARY):

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

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

Základy databází. O autorech 17 PRVNÍ ČÁST. KAPITOLA 1 Začínáme 19

Obsah. Kapitola 1. Kapitola 2. Kapitola 3. Kapitola 4. Úvod 11. Stručný úvod do relačních databází 13. Platforma 10g 23

Databázové systémy úvod

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

Databázové systémy, MS Access. Autor: Ing. Jan Nožička SOŠ a SOU Česká Lípa VY_32_INOVACE_1130_Databázové systémy, MS Access_PWP

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

POSTUP PRO VYTVOŘENÍ STRUKTUR PRO UKLÁDÁNÍ RDF DAT V ORACLE

Roční periodická zpráva projektu

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

Zápisování dat do databáze

SQL. Pohledy, ochrana dat,... Pavel Tyl

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

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

Administrace Oracle. Práva a role, audit

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

Databáze I. 1. přednáška. Helena Palovská

Operátory ROLLUP a CUBE

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

Fakulta elektrotechniky a informatiky Databázové systémy 2. Leden 2010 souhrn. Červené dobře (nejspíš), modré možná

Univerzita Pardubice. Fakulta elektrotechniky a informatiky SEMESTRÁLNÍ PRÁCE PRO PŘEDMĚT IDAS2

O Apache Derby detailněji. Hynek Mlnařík

Modelování procesů s využitím MS Visio.

IS Restaurace. Semestrální práce. Tomáš Rumíšek V Brně dne Peter Ševčík

Vývoj IS - strukturované paradigma II

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

Databáze II. 2. přednáška. Helena Palovská

Databáze II. 1. přednáška. Helena Palovská

Jaký je rozdíl v definicicíh VARCHAR2(20 BYTE) a VARCHAR2(20 CHAR):

RELAČNÍ DATABÁZOVÉ SYSTÉMY

Databáze SQL SELECT. David Hoksza

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

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

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

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

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

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

Použití databází na Webu

10 Metody a metodologie strukturované analýzy

Databázové systémy trocha teorie

Tvorba informačních systémů

Ukládání a vyhledávání XML dat

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

Okruhy z odborných předmětů

Využití XML v DB aplikacích

Ukázka knihy z internetového knihkupectví

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

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework

Semestrální práce z DAS2 a WWW

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

Temporální databáze. Jan Kolárik Miroslav Macík

Michal Krátký, Miroslav Beneš

Funkční analýza Předmět Informační systémy. Daniela Szturcová

Úvod do databázových systémů. Ing. Jan Šudřich

SQL. relační databázový systém. v úvodní kurz jazyka SQL

Marketingová komunikace. 2. soustředění. Mgr. Pavel Vávra Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph)

Virtual Private Database (VPD) Jaroslav Kotrč

Databázové systémy a SQL

Modelování procesů (2) Procesní řízení 1

Maturitní témata Školní rok: 2015/2016

Databázové systémy I

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

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

2-3 hodiny. Při studiu tohoto bloku se předpokládá, že čtenář je obeznámen s jazykem SQL a zná základy jazyka PL/SQL.

Architektura informačních systémů. - dílčí architektury - strategické řízení taktické řízení. operativní řízení a provozu. Globální architektura

A5M33IZS Informační a znalostní systémy. O čem předmět bude? Úvod do problematiky databázových systémů

Osnova je orientační pro FIT, u FEKTu se dá předpokládat, že budou zohledněny předchozí znalosti studentů, kde většina s databází nikdy přímo

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

Stručný obsah. část III Aktualizace dat Kapitola 10: Aktualizace databáze 257 Kapitola 11: Integrita dat 275 Kapitola 12: Zpracování transakcí 307

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

Primární klíč (Primary Key - PK) Je právě jedna množina atributů patřící jednomu z kandidátů primárního klíče.

Obsah přednášky. Databázové systémy RDBMS. Fáze návrhu RDBMS. Coddových 12 pravidel. Coddových 12 pravidel

Michal Krátký. Tvorba informačních systémů, 2008/2009. Katedra informatiky VŠB Technická univerzita Ostrava. Tvorba informačních systémů

Univerzita Pardubice. Fakulta elektrotechniky a informatiky

OBJECT DEFINITION LANGUAGE. Jonáš Klimeš NDBI001 Dotazovací Jazyky I 2013

Deklarativní IO shrnutí minulé přednášky

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

Databázové a informační systémy

Klasické metodiky softwarového inženýrství I N G M A R T I N M O L H A N E C, C S C. Y 1 3 A N W

4IT218 Databáze. 4IT218 Databáze

Struktura pamětí a procesů v DB Oracle. Radek Strnad

Transkript:

6. přednáška z předmětu Datové struktury a databáze (DSD) Ústav nových technologií a aplikované informatiky Fakulta mechatroniky, informatiky a mezioborových studií Technická univerzita v Liberci jan.lisal@tul.cz 27. října 2010

Osnova 1 Opakování z minula 2 SQL Trigger 3 Konceptuální modelování Kroky modelování Plánování databáze, Definice systému Sběr a analýza požadavků, Návrh databáze Vytvoření prototypu, Implementace, Konverze a načtení dat Testování, Provozní údržba Analýza Funkční analýza 4 Shrnutí

Přehled základních teoretických pojmů ˆ literál, SELECT, INSERT, UPDATE, DELETE Synatxe jednotlivých příkazů s příkaldy ˆ INSERT, UPDATE, DELETE Hlubší pohled na příkaz SELECT ˆ sémantika příkazu ˆ značení základních typů výběru dat ˆ způsoby omezování v konstrukci WHERE dle typů atributů ˆ aritmetické a agregační fce

Trigger Teorie TRIGGERů Trigger (spoušť) je procedura která je automaticky spuštěna SŘBD jako reakce na specifikovanou akci v databázi Aktivní databáze ˆ databáze, která obsahuje definici spouští Nezáleží na to kdo (který uživatel) provede akci Uživatel si není vědom aktivity spouští v DB

Trigger Akce spojená s n-ticí V případě spuštění triggeru se dostávám i k dotčeným datům (tečková notace) ˆ NEW ˆ Označuje nově vkládanou/upravovanou n-tici (řádek) do relace (tabulky) v DB ˆ OLD ˆ Označuje data před změnou v DB (smazaná data nebo data před změnou)

Trigger Syntaxe příkazu TRIGGER 1 CREATE TRIGGER triggername 2 { BEFORE AFTER } t r i g g e r E v e n t 3 ON tab name FOR EACH ROW t r i g g e r S t m t ; triggerevent - jedna z možností aktivace ˆ INSERT - při jakémkoli vkládání dat do tabulky (INSERT, LOAD DATA a REPLACE) ˆ UPDATE - při změně dat v tabulce ˆ DELETE - při mazání dat z tabulky (DELETE a REPLACE, není aktivován při DROP TABLE a TRUNCATE TABLE)

Trigger Syntaxe příkazu TRIGGER - příklad 1 DELIMITER // 2 CREATE TRIGGER e l e m e n t I n s e r t 3 BEFORE INSERT ON element 4 FOR EACH ROW 5 BEGIN 6 DECLARE x INT ; 7 DECLARE y INT ; 8 SELECT u2. s o u r a d n i c e X u1. s o u r a d n i c e X INTO x 9 FROM u z e l AS u1, u z e l as u2 10 WHERE u1. i d = NEW. i d u 1 AND u2. i d = NEW. i d u 2 ; 11 SELECT u3. s o u r a d n i c e Y u1. s o u r a d n i c e Y INTO y 12 FROM u z e l AS u1, u z e l as u3 13 WHERE u1. i d = NEW. i d u 1 AND u3. i d = NEW. i d u 3 ; 14 SET NEW. r e f e r e n c n i V e l i k o s t = x * y ; 15 END; 16 // 17 DELIMITER ;

Trigger Další příkazy v kontextu práce s TRIGGERy Zobrazení všech triggerů v databázi 1 SHOW TRIGGERS ; Smazání triggeru 1 DROP TRIGGER [ IF EXISTS ] triggername ;

Kroky modelování Životní cyklus vývoje DB systému ˆ Plánování databáze

Kroky modelování Životní cyklus vývoje DB systému ˆ Plánování databáze ˆ Definice systému

Kroky modelování Životní cyklus vývoje DB systému ˆ Plánování databáze ˆ Definice systému ˆ Sběr a analýza požadavků

Kroky modelování Životní cyklus vývoje DB systému ˆ Plánování databáze ˆ Definice systému ˆ Sběr a analýza požadavků ˆ Návrh databáze

Kroky modelování Životní cyklus vývoje DB systému ˆ Plánování databáze ˆ Definice systému ˆ Sběr a analýza požadavků ˆ Návrh databáze ˆ Vytvoření prototypu a implementace

Kroky modelování Životní cyklus vývoje DB systému ˆ Plánování databáze ˆ Definice systému ˆ Sběr a analýza požadavků ˆ Návrh databáze ˆ Vytvoření prototypu a implementace ˆ Konverze a načtení dat

Kroky modelování Životní cyklus vývoje DB systému ˆ Plánování databáze ˆ Definice systému ˆ Sběr a analýza požadavků ˆ Návrh databáze ˆ Vytvoření prototypu a implementace ˆ Konverze a načtení dat ˆ Testování

Kroky modelování Životní cyklus vývoje DB systému ˆ Plánování databáze ˆ Definice systému ˆ Sběr a analýza požadavků ˆ Návrh databáze ˆ Vytvoření prototypu a implementace ˆ Konverze a načtení dat ˆ Testování ˆ Provozní údržba

Kroky modelování Fáze životního cyklu vývoje DB systémů Plánování databáze Definice systému Sběr a analýza požadavků Návrh databáze Vytvoření prototypu Implementace Konverze a načtení dat Testování Provozní údržba

Kroky modelování Proč modelovat/analyzovat? ˆ Standardizované pracovní postupy ˆ Snadnější komunikace v týmu ˆ Aktuální a kompletní dokumentace

Kroky modelování Plánování databáze Činnost managementu, které umožní v mezích možností hladký a efektivní průběh jednotlivých fází životního cyklu vývoje databázového systému. Definice systému Definice rozsahu a hranic databázového systému včetně jeho hlavních uživatelských pohledů.

Kroky modelování Sběr a analýza požadavků Proces sbírání a analýzy informací o systému či organizaci, který má DB systém popisovat, a použití těchto informací k určení požadavků na nový DB systém. Návrh databáze Proces vytváření návrhu, který bude podporovat celkové poslání a dílčí cíle pro požadovaný DB systém. ˆ Výběr SŘBD

Kroky modelování Vytvoření prototypu Vytvoření fungujícího modelu databázového systému. Implementace Fyzická realizace návrhu databáze a aplikací. Konverze a načtení dat Příprava všech dat do podoby, kterou bude možno vložit do připravené databáze (v případě nutnosti konverze dat snaha o programové postihnutí).

Kroky modelování Testování Proces hledání chyb v průběhu zkušebnho provozu databáze. Provozní údržba Proces monitorování a údržby DB systému po nasazení.

Analýza Funkční analýza ˆ DFD Data Flow Diagram Datová analýza ˆ ER Model Entity Relationship Model ˆ ERD (Entity-Relationship Diagram)

Analýza Funkční analýza ˆ Identifikace systémových funkcí ˆ Identifikace událostí ˆ Definice transakcí ˆ Popis transakcí

Analýza DFD Data Flow Diagram Proces 1.1 Název Název Terminátor Datový tok Název Název Úložiště dat

Analýza DFD Top-Down Postup Úrovně: ˆ 1. Kontextový diagram inf. o tom jak bude IS komunikovat se zbytkem světa ˆ 2. n-tá další postupné rozklady (max. doporučená hodnota n je 3, pozn. jedná se o hodnotu doporučenou) Vhodná jmenná konvence

Analýza Chyby DFD ˆ datastory, z nichž se jenom čte nebo se do nich jenom zapisuje ˆ samogenerující funkce, tj. funkce které mají jenom výstupy ˆ černé díry, tj. funkce do nichž data pouze vstupují

Analýza Příklad kontextového diagramu Dílna Dodavatel Sklad Management

Analýza Seznam událostí p.č. Název události Typ Reakce systému 1. Dílna žádá materiál Data Vyhledá mat., vystaví výdejku 2. Sklad nemá dostatek Řídící Vystaví objednávku materiálu 3. Dodavatel dodá Data Přijme mat., potvrdí dodací materiál list 4. Je první den v měsíci Řídící datum Vytvoří přehled o spotřebě

Analýza Upřesněný kontextový diagram Dodavatel Objednávka Žádanka Dílna Dodací list Sklad Výdejka Přehled spotřeby Management

Analýza Další úrovně diagramu - sklad Objednávka Výdejka Žádanka Výdej mater. Objednávání Mat. dodavatel Materiál Zásoba materiálu Databáze Skladové zásoby Materiál Tvorba pohledů Příjem mater. Přehled spotřeby

Práce s TRIGGERy ˆ teorie kol TRIGGERů ˆ syntaxe vytvoření, smazání a dotaz na existující triggery Konceptuální modelování ˆ Životní cyklus vývoje DB systému ˆ Analýza systému ˆ DFD - Data Flow Diagram

Děkuji Vám za pozornost.