Professional Documents
Culture Documents
4 ZIS 2020-relační+DB,+dotazovací+jazyk+SQL
4 ZIS 2020-relační+DB,+dotazovací+jazyk+SQL
4 ZIS 2020-relační+DB,+dotazovací+jazyk+SQL
Co je to entita?
Objekt z reálného světa. Entitu reprezentuje v databázi tabulka.
Co je to atribut entity?
Vlastnost entity, v databázi odpovídá atributu sloupec tabulky.
Vlastnosti atributů
• Musí být atomické (=dále nedělitelné)
• Na pořadí sloupců nezáleží
Normalizace
Cílem normalizace je dosažení ideální struktury dat.
24
SQL - Structured Query Language
Pro řízení relačních databází byl vyvinut tzv. Structured
Query Language (SQL)
Standardní rozhraní všech typů databázových
systémů
Zůstává i dále trendem vývoje komunikace s
databázovými systémy
Existuje mezinárodní norma:
ISO/IEC 9075:2011
Information technology – Database languages – SQL
25
Základní vlastnosti SQL
26
SQL MS Access
• Structured Query Language
• Standardní jazyk pro správu databází v SŘBD
• Byl navržen počátkem 70.
let 20. století a používá se
dodnes.
• Píší se v něm příkazy a
SŘBD je vykonává.
• MS Access jej automaticky
generuje podle akcí
uživatele.
27
Databáze v MS Excel
pomocí MS Query
• Volby v MS Excel: Data
• Importovat externí data - Nový databázový dotaz
• Uživatel vybere tabulky a jejich sloupečky.
• Uživatel nastaví relace.
• Automaticky se vytvoří dotaz (query).
• Výsledek dotazu se uloží jako tabulka do Excelu a lze
jej dodatečně upravovat.
• http://www.exceluser.com/explore/msquery1_1.htm
28
Základní příkazy SQL
29
Syntaxe jazyka
30
Definice objektů - SQL
Výpis tabulky:
DESC <jméno tabulky>;
Poznámka: V prostředí MS Access nebudeme příkazy jazyka DDL používat
31
Definice tabulky – SQL - ukázka
32
33
Datové typy
• Textové
CHAR(n), VARCHAR(n)
• Číselné
SMALLINT, LONGINT, INTEGER
FLOAT, REAL, DECIMAL(m,n)
• Datové
DATE, TIME, DATETIME, TIMESTAMP
• Speciální (obrázky, soubory, …)
• Postupně dochází k rozšiřování datových typů především z hlediska multimediálních dat
34
Návrhové zobrazení MS Access
35
Návrhové zobrazení MS Access
36
DML - Data Manipulation Language
• vložení záznamu
INSERT INTO
• změna dat v záznamu
UPDATE
• výběr záznamů
SELECT
• zrušení záznamu
DELETE
37
Naplňování tabulek daty
Po vytvoření definic tabulek, jsou tyto prázdné (bez dat) a je třeba do tabulek data
vložit.
Příkazy :
INSERT INTO - umožní vložit do jmenované tabulky a potřebných položek data.
Příklady :
INSERT INTO zákazník VALUES („123456“,“Jan“,“Novák“);
38
Příkaz SELECT
39
Dotazy - SQL
40
ER diagram - Knihovna
MÁ_VYPŮJČENO MÁ_ZÁZNAM
EXEMPLÁŘ KNIHA
N 1
41
Získání celé tabulky
SELECT Isbn, Inv_č, D_nákupu, Cena, Země_vydání
FROM Exemplář;
42
Projekce
43
Vypočítaná položka
44
Selekce (restrikce)
výčet hodnot
SELECT * FROM Exemplář
WHERE Země_vydání IN (‘GB‘ , ‘USA‘ );
interval
SELECT * FROM Exemplář
WHERE Cena BETWEEN 300 AND 900;
45
Výběr podle vzoru
46
Test prázdné hodnoty
47
Řazení
48
Agregované funkce
COUNT počet hodnot ve sloupci (počet řádků)
SUM součet hodnot ve sloupci
AVG průměr hodnot z daného sloupce
MIN minimální hodnota
MAX maximální hodnota
49
Agregační funkce
50
Vnořený select
Najdi čísla čtenářů, kteří bydlí v Plzni a mají vypůjčenou nějakou knihu.
51
Grupování
SELECT COUNT(Inv_č), SUM(Cena) AS celkem, Země_vydání
FROM Exemplář
GROUP BY Země_vydání
ORDER BY Země_vydání
3 1950 GB 3 1950 GB
2 1562 USA 2 1562 USA
52