2. přednáška databáze, využití ms excel

43
2. přednáška Databáze, využití MS Excel Úvod do databázových systémů B Ing. David Chudán

Upload: mairead-flanagan

Post on 30-Dec-2015

103 views

Category:

Documents


0 download

DESCRIPTION

Úvod do databázových systémů B Ing. David Chudán. 2. přednáška Databáze, využití MS Excel. Obsah přednášky. Teoretické základy databázových systémů (slajdy 3- 34 ) MS Excel (slajdy 35-39 ) Příklady na cvičení (slajdy 40-41 ) Zdroje (slajd 42). 2. Co je to databáze.

TRANSCRIPT

Page 1: 2. přednáška Databáze, využití MS Excel

2. přednáška Databáze, využití MS Excel

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

Ing. David Chudán

Page 2: 2. přednáška Databáze, využití MS Excel

2

Obsah přednášky

• Teoretické základy databázových systémů (slajdy 3-34)

• MS Excel (slajdy 35-39)• Příklady na cvičení (slajdy 40-41)• Zdroje (slajd 42)

Page 3: 2. přednáška Databáze, využití MS Excel

Co je to databáze

<<< Kartotéka

Informace

uspořádanéneuspořádané

Page 4: 2. přednáška Databáze, využití MS Excel

Pojem databáze• Databáze (DB) = množina dat (báze dat,

zakódované informace) a nástrojů, které s těmito daty manipulují.

• Data jsou organizovány v tabulkách• Databáze je uložená na disku v souboru• V přeneseném smyslu pojmem databáze

označuje i databázový informační systém• Databáze lze vytvářet v programech MS Access,

MS SQL Server, FoxPro, Sybase, Oracle, MySQL, OpenOffice.org Base, aj.

Page 5: 2. přednáška Databáze, využití MS Excel

Příklady databází

• Pacienti (jméno, zdravotní stav, léky, …)• Knihy (název, autor, rok vydání, …)• Sklad (název, číselný kód, množství, …)• Obyvatelé města (jméno, bydliště, …)• Pozemky (číslo, místo, vlastník, …)• Sbírka (název, datum získání, …)• Zákazníci (jméno, nákup, …)

Page 6: 2. přednáška Databáze, využití MS Excel

správce databáze

aplikační programátoři

aplikační programátoři

běžný uživatel

běžná uživatelka

pokročilý uživatel

Role

Page 7: 2. přednáška Databáze, využití MS Excel

DATA

DATA

aplikace

aplikace

aplikace

aplikace

Přístup k datům

Vrstva odstiňující aplikace od ukládání dat a chránící data.

Sdílení dat aplikacemi, paralelní přístup

Page 8: 2. přednáška Databáze, využití MS Excel

aplikační server

SQL

SQ

Lda

ta

tenký klient

tlustý klient

dataDATA

SŘBD (DBMS) – systém řízení báze dat (database management system)

– říká se mu databázový server

– např. IBM DB2, Oracle, Informix, MS SQL Server, Sybase, …,

MySQL, PostgreSQL, Firebird …

Technologická architektura

Page 9: 2. přednáška Databáze, využití MS Excel

DATA

SQL

data

tenký klient

aplikační server

Tenký klient : např. web browser

Aplikační server: např. Apache s PHP

Databázový server: např. MySQL

Page 10: 2. přednáška Databáze, využití MS Excel

DATASQL tlustý

klientdata

Aplikační logika je v tlustém klientovi:

–programován v C, Javě …,nebo v proprietárním prostředí příslušném k db serveru, nebo to může být i např. aplikace v MS Access.

Databázový server může být např. Oracle…

Page 11: 2. přednáška Databáze, využití MS Excel

Datový soubor

„klientská databáze“

file server

„Klientská databáze“ např. MS Access, Paradox, DBase

Page 12: 2. přednáška Databáze, využití MS Excel

Databázový server vs. file server

• Přístup k jednotlivým datovým položkám záznamů, nikoli k celému souboru– názvy pro různé objekty databázové struktury

• na strukturu je možno se dotázat...

• Specifická přístupová práva k jednotlivým typům záznamů pro různé uživatele– v rámci OS má k datovému souboru přístup pouze

SŘBD

Page 13: 2. přednáška Databáze, využití MS Excel

Databázový server vs. file server

• Zajišťování integrity a konzistence dat– Validace vstupu– Obnova po poruchách až k poslednímu

konzistentnímu stavu

• Efektivní správa velkého objemu dat

Page 14: 2. přednáška Databáze, využití MS Excel

Databázový systém• (maximální) požadavky

– sdílení dat, paralelní přístup– nezávislost aplikací na fyzickém uložení dat, logický

přístup k datům, centrální popis dat– ochrana před neoprávněným přístupem

před poruchami– kontrola konzistence dat – velké objemy dat

Page 15: 2. přednáška Databáze, využití MS Excel

Různé modely pro databázovou strukturu

síťový, hierarchický síťové, hierarchické

relační

relační

objektový objektové

1960

1970

1980

1990

databázové modely SŘBD

síťové, hierarchické

relační relační

objektový objektové

objektový

data warehouse

1960

1970

1980

1990

1960

1970

1980

1990

databázové modely SŘBD databázové modely SŘBD databázové modely SŘBD

multidimenzionální

objektově-relační objektově-relační

Page 16: 2. přednáška Databáze, využití MS Excel

Databázová struktura obecně

• Definují se typy záznamů– výčet položek, jejich typů (domén) a jmen

• V typu záznamu může být určen primární klíč– skupina položek k jednoznačné identifikaci záznamu– užití v relačních a objektových databázích

• Záznamy mohou být vyhledávány navigací podle odkazů mezi záznamy– v síťových a objektových databázích

• Vyhledávat se může také sekvenčně – hierarchických databázích– když to nejde jinak

Page 17: 2. přednáška Databáze, využití MS Excel

Data a vztahy mezi nimi

855912/0671

Sezimovo Ústí

Kollárova 4

Anna

22 400 Kč

690318/1478

Praha 4

Sládkovičova 13

Jan

54 800 Kč

31

Havlova 3

Prodej

Sídlo-ulice

Číslo dveří

Oddělení

Jméno Adresa-město

Adresa-ulice

Základní plat

Foto

Jméno Adresa-město

Adresa-ulice

Základní plat

Je zaměstnán v

Je zaměstnána v

Má vedoucího

Foto

Page 18: 2. přednáška Databáze, využití MS Excel

Cizí klíčeCizí klíčePrimární klíče

Relační databáze

690318/1478 Jan Praha 4 Sládkovičova 13 54 800 Kč Prodej

855912/0671 Anna Sezimovo Ústí Kollárova 4 22 400 Kč Prodej

Prodej Havlova 3 31 690318/1478

Zaměstnenec

Oddělení

Jméno Adresa-město Adresa-ulice Základní plat Foto

Sídlo-uliceČíslo dveří

Název Vedoucí

Oddělení

Relace, relační tabulky

Page 19: 2. přednáška Databáze, využití MS Excel

Relační databáze

• Data jsou organizována do tabulek– Jeden záznam = jeden řádek nějaké tabulky– Sloupce tabulky tvoří pole/položky záznamů

• Položky jsou atomické – nejsou složeny z částí, které by nesly nějaký

význam (ve světě aplikace)– není v nich více údajů

Page 20: 2. přednáška Databáze, využití MS Excel

Struktura relačního modelu• Data v databázi jsou organizovány v tabulkách

– Jedna databáze může obsahovat i více tabulek• Vztahy a vazby mezi tabulkami popisují tzv. relace• Každá tabulka tvořena jednotlivými záznamy (řádek

tabulky)– Jeden záznam pro každého pacienta, knihu, pracovníka, …

• Každý záznam se skládá z určitých datových polí (sloupce tabulky), označují se též jako položky nebo atributy– Např. jméno, příjmení, datum narození, atd., pro pacienta

• Struktura tabulky = jaká datová pole tabulka obsahuje• Struktura databáze = jaké tabulky (a vztahy mezi nimi)

tvoří celou databázi

Page 21: 2. přednáška Databáze, využití MS Excel

Tabulka

Page 22: 2. přednáška Databáze, využití MS Excel

Relační databáze

• Položky v relační databázi jsou atomické – nejsou složeny z částí, které by nesly nějaký

význam (ve světě aplikace)– není v nich více údajů

Page 23: 2. přednáška Databáze, využití MS Excel

Co jsou atomické položky?

Vysoká škola ekonomická

W.Churchilla 4, 130 00 Praha 3

224-095-111

Vysoká škola finanční a správní

Estonská 500, 101 00 Praha 10

210-088-800271-741-597

Nejsou atomické:

Vnitřní struktura významů. Více hodnot se stejným

významem.

Page 24: 2. přednáška Databáze, využití MS Excel

Kód zákazníka Firma Adresa Město Země

RICAR Ricardo Adocicados Av. Copacabana, 267 Rio de Janeiro Brazílie

RICSU Richter Supermarkt Grenzacherweg 237 Ženeva Švýcarsko

ROMEY Romero y tomillo Gran Vía, 1 Madrid Španělsko

Číslo objednávky Zákazník Zaměstnanec Datum objednávky Dodat dne

11074 SIMOB King, Robert 06.05.1998 03.06.1998

11075 RICSU Callahan, Laura 06.05.1998 03.06.1998

11076 BONAP Peacock, Margaret 06.05.1998 03.06.1998

Číslo objednávky Výrobek Jednotková cena Množství Sleva

11074 16 436,25 Kč 14 5,00%

11075 2 475,00 Kč 10 15,00%

11075 46 300,00 Kč 30 15,00%

11075 76 450,00 Kč 2 15,00%

11076 6 625,00 Kč 20 25,00%

11076 14 581,25 Kč 20 25,00%

11076 19 230,00 Kč 10 25,00%

Číslo výrobku

Název výrobku Dodavatel

1 Chai Aux joyeux ecclésiastiques

2 Chang Exotic Liquids

…    

46 Spegesild Lyngbysild

…    

76 Lakkalikööri Karkki Oy

Svět aplikace

databázová struktura

relační databáze

Page 25: 2. přednáška Databáze, využití MS Excel

Datová pole vs. datové typy

• Pole tabulky mohou být, podle charakteru údaje, který obsahují, různého druhu (datového typu):– Text– Číslo (celé, reálné)

• Automatické číslo– Datum– Logická hodnota (ANO / NE)– Memo (poznámka)– Objekt OLE (např. obrázek)– Hypertextový odkaz

Page 26: 2. přednáška Databáze, využití MS Excel

Vlastnosti datového pole 1• Pole mají definovanou určitou délku, danou počtem

znaků nebo míst u čísel, a taky formát• Lze také definovat masku pole, tj. jak mají zadávané

hodnoty vypadat (např. rodné číslo)• S hodnotami v polích typu číslo lze provádět všechny

aritmetické operace• Hodnoty v polích typu číslo, text či datum lze uspořádat

(vzestupně či sestupně)• Pokud při výpočtu vznikne číslo, které se do pole

nevejde, dojde k chybě• Volitelná vlastnost „Nutno zadat (required) hodnotu“

Page 27: 2. přednáška Databáze, využití MS Excel

Vlastnosti datového pole 2• „Primární klíč“ – speciální vlastnost, označení nějakého

jiného pole– Obvykle celé kladné číslo nebo automatické číslo, jedinečné

pro každý záznam v celé tabulce• Pole mohou mít určena omezení na zadávané hodnoty

(tzv. ověřovací pravidlo)– Omezovací text se vypíše, když pravidlo není splněno

• Předdefinovaná hodnota (default)– Automaticky vyplněná hodnota, uživatel ji může přepsat

• Povolení nulové délky hodnoty (prázdné políčko)• Indexování podle pole

– Pro rychlejší vyhledávaní

Page 28: 2. přednáška Databáze, využití MS Excel
Page 29: 2. přednáška Databáze, využití MS Excel

Relace• Databáze jsou tvořeny jednotlivými tabulkami,

vztahujícími se k určitému předmětu (osobě, činnosti)– V DB knihovny je např. vhodné mít tabulky pro knihy,

autory, apod.• Tabulky jsou mezi sebou propojeny přes určitá pole,

tomuto propojení se říká relace• Relace zpřehledňuje databázi, zabraňuje

vícenásobnému zadávání stejných údajů• K propojení polí v záznamech v různých tabulkách se

používají tzv. sekundární klíče– V tabulce je pole, jehož hodnota se „odvolává“ na primární

klíč v jiné tabulce

Page 30: 2. přednáška Databáze, využití MS Excel
Page 31: 2. přednáška Databáze, využití MS Excel

Typy relací

• Relace 1 : 1– 1 kniha – 1 autor (nepraktické a zbytečné)

• Relace 1 : N– 1 autor – více knih

• Relace M : N– Více autorů – více knih (rozšířeni relace 1 : N i „opačným“ směrem – 1

knihu může být i od více autorů)

• MS Access nabízí k zobrazení relacemi propojených záznamů v tabulkách tzv. vnořené datové listy– U propojených záznamů v relaci 1 : N se po kliknutí na záznam na

straně 1 relace otevřou záznamy z jiné tabulky

Page 32: 2. přednáška Databáze, využití MS Excel

32

Page 33: 2. přednáška Databáze, využití MS Excel

Význam databází• Z předešlého stručného výčtu nasazení databázových

aplikaci je zřejmý jejich obrovský význam. Dnešní společnost eviduje v databázích téměř všechno. – Co není v databázích, vlastně neexistuje. (Parafráze na starý latinský

výrok: „Qout non in actis est non in mundis.“)

• Problematika ochrany dat v databázích je velmi závažná!– Více než 90% peněz v ekonomice nejsou fyzické peníze (bankovky, mince),

ale jen čísla na účtech podniků a občanů, uložená v nějaké databázi v počítači nějaké banky.

– Databáze pacientů u lékařů obsahují často citlivé údaje, které mohou být proti nim zneužity.

Page 34: 2. přednáška Databáze, využití MS Excel

Význam databází

• Současný rozvoj a masové rozšíření počítačů jsou v hlavní míře zásluhou nasazování DB aplikací. Vývoj počítačů stál (a stojí) stamiliardy dolarů, musela proto existovat oblast jejich nasazení, která tyto peníze byla (a je) schopna vydělat. Touto oblastí jsou právě databáze – firmy a instituce jsou za kvalitní, rychlou a dostupnou evidenci toho co potřebují ke své činnosti zaplatit nemalou částku. Žádné jiné využití (textové a tabulkové zpracování dat, grafika, multimédia, modelování a simulace, hry) by tyto částky na vývoj a hromadnou levnou velkovýrobu ICT v jejich počátcích nezajistilo.

Page 35: 2. přednáška Databáze, využití MS Excel

MS Excel a databáze

• MS Excel nabízí databázové funkce, pomocí kterých je možné vypočítat například sumu, průměr, maximum, minimum a počet.

• Rozdíl oproti standardnímu použití těchto funkcí spočívá možnosti definovat určité podmínky, například maximum. Hodnoty nad toto maximum do výpočtu nebudou zahrnuty.

• Příklad: funkce DAVERAGE

Page 36: 2. přednáška Databáze, využití MS Excel

Příklad – funkce DPRŮMĚRDPRŮMĚR(databáze;pole;kritéria)• Databáze je oblast buněk, která tvoří seznam nebo databázi.

Databáze je seznam souvisejících dat, ve kterých řádky souvisejících informací představují záznamy a sloupce dat jsou pole. První řádek seznamu obsahuje popisky sloupců.

• Pole určuje, který sloupec je ve funkci používán. Argument pole může být zadán jako text s popiskem sloupce v uvozovkách, například "Stáří" nebo "Výnos", nebo jako číslo představující umístění sloupce v seznamu: hodnota 1 představuje první sloupec, hodnota 2 druhý sloupec atd.

• Kritéria je oblast buněk, která obsahuje zadaná kritéria. Pro argument kritéria můžete použít libovolnou oblast, která zahrnuje nejméně jeden popisek sloupce a nejméně jednu buňku pod popiskem sloupce určující podmínku sloupce.

Page 37: 2. přednáška Databáze, využití MS Excel

Řešený příklad, funkce DPOČET

Vytvořte databázovou funkci, která vrátí počet hodnot, jejichž spotřeba je menší než 10 litrů a průměrná rychlost je větší než 55km/h.

Page 38: 2. přednáška Databáze, využití MS Excel

Řešený příklad

Page 39: 2. přednáška Databáze, využití MS Excel

Požadované DB funkce

• DPOČET - vrátí počet buněk obsahující čísla v poli (sloupci) záznamů databáze, které splňují zadaná kritéria.

• DPRŮMĚR – viz předchozí slide• DSUMA – sečte čísla v poli (sloupci) záznamů

databáze, která splňují zadaná kritéria

Page 40: 2. přednáška Databáze, využití MS Excel

Procvičení I.

V souboru Excel_DB:1. Vytvořte databázovou funkci, která vrátí

počet hodnot, jejichž záznam v poli „tankováno“ je větší než 50.

2. Vytvořte databázovou funkci, která vrátí počet hodnot, jejichž záznam v poli „průměrná rychlost“ je menší než 50 a zároveň „spotřeba“ je větší než 11.

Page 41: 2. přednáška Databáze, využití MS Excel

Procvičení II.

V souboru Excel_DB:3. Vytvořte databázovou funkci, která vrátí

průměr hodnot sloupce „spotřeba“, jejichž záznam v poli „průměrná rychlost“ je větší než 80.

4. Vytvořte databázovou funkci, která vrátí součet hodnot sloupce „km“, jejichž záznam v poli „spotřeba“ je menší než 9.

Page 42: 2. přednáška Databáze, využití MS Excel

Procvičení III.

5. Vytvořte vlastní tabulku, která bude obsahovat alespoň 4 číselné sloupce a 10 řádků. Tabulka a sloupce by měly být smysluplné, vyplněné hodnoty mohou být náhodné. Nad vytvořenou tabulkou vymyslete zadání alespoň 3 příkladů a příklady vyřešte.

Page 43: 2. přednáška Databáze, využití MS Excel

Zdroje• Kubačák, Martin. Tvorba databáze & MS Access 1,2 Dostupné na:

dec52.lf1.cuni.cz/~mkuba/vyuka/files/P08-INF2009-2010-Databaze.ppt• Palovská, Helena. Slajdy k předmětu Databázové systémy. Dostupné na:

http://nb.vse.cz/~palovska/uds/databazove_systemy.pdf• DPRŮMĚR. MS Office Excel. Dostupné na:

http://office.microsoft.com/cs-cz/excel-help/dprumer-HP005209045.aspx