19 Flashcards

(10 cards)

1
Q

Co je sql

A
  • SQL (Structured Query Language) = Jedná se o strukturovaný dotazovací jazyk používaný pro práci s daty v relačních databázích.
  • Pořadí v SQL skriptu: SELECT -> FROM -> WHERE -> GROUP BY -> HAVING -> ORDER BY
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Přikazy pro vytoření a zrušení databáze

A

CREATE DATABASE [Název];
USE DATABASE [Název];
DROP DATABASE [Název];

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Vytvoření a zrušení tabulky

A

CREATE TABLE [Název]
(
ID_Uzivatel int not null primary key,
Jmeno varchar(64) not null,
Prijmeni varchar(64) not null,
Vek tinyint not null,
Telefon varchar(32) null
);
DROP TABLE [Název];

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Změna v tabulce

A

CREATE TABLE [Název]
(
ID_Uzivatel int not null primary key,
Jmeno varchar(64) not null,
Prijmeni varchar(64) not null,
Vek tinyint not null,
Telefon varchar(32) null
);
DROP TABLE [Název];

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Vložení dat do tabulky

A

INSERT INTO Zakaznici (ID, vek) VALUES (1, 20) (vložení hodnot do specifických sloupců tabulky)
INSERT INTO Zakaznici VALUES (…) do všech sloupců

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Úprava dat v tabulce

A

UPDATE Zakaznici SET Jmeno = ‘Jakub‘ (Nastaví jméno Jakub všem řádkům ve sloupci Jmeno)
UPDATE Zakaznici SET Jmeno = ‘Jakub‘ WHERE ID = 3 (Jen tam, kde je ID = 3)
UPDATE Zakaznici SET Jmeno = ‘Jakub‘, Prijmeni = ‘Horak‘

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

odstranění z tabulky

A

DELETE FROM Zakaznici WHERE Vek = 20 (Je nutné použít podmínku WHERE, jinak se z tabulky smažou všechny data)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Výběr z tabulky

A

SELECT * FROM Zakaznici
SELECT DISTINCT Jmeno, Prijmeni FROM Zakaznici (DISTINCT - Odstraní na výstupu duplicitní řádky)
SELECT Jmeno, Prijmeni FROM Zakaznici WHERE Vek < 20
GROUP BY Jmeno, Prijmeni
HAVING [doplňující podmínka]
ORDER BY Jmeno [Způsob seřazení výsledků – DESC nebo ASC]

  • SELECT Jmeno + ‘ ‘ + Prijmeni AS ‘Celé jméno‘ (Spojí Jmeno a Prijmeni do jednoho sloupce s nazvem Celé Jméno)
  • Restrikce dat (pomínka):
    SELECT * FROM Zakaznici WHERE [=,<,>,IS NULL, IS NOT NULL, BETWEEN, LIKE, NOT LIKE, AND, OR]
    SELECT * FROM Zakaznici WHERE jmeno
    LIKE [A-D]% (Hledá vše co začíná na A, B, C nebo D a má za sebou libovolný počet znaků)
    LIKE [1]_ (Hledá vše co začíná na 1 a má za sebou ještě jeden libovolný znak)
    LIKE [^ 4-8] (Hledá vše kromě intervalu 4 - 8)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Jaké máme integritní omezení

A
  1. NOT NULL = hodnota nesmí být nulová
  2. UNIQUE = hodnota musí být unikátní v rámci všech řádků v tabulce
  3. PRIMARY KEY = definuje primátní klíč, prakticky NOT NULL a UNIQUE dohromady
  4. REFERENCES, FOREIGN KEY = definuje cizí klíč (referenční atributy musí být kompatibilní)
  • Při aktualizaci tabulky referující nebo referované může nastat porušení integrity cizích klíčů,
    např. Pokud by jsme chtěli smazat záznam z referované tabulky, když pro mazanou hodnotu klíče existuje nějaká reference, tak to vyhodí chybu, toto se může ošetřit integritním omezením ON DELETE / ON UPDATE [CASCADE / SET NULL]
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Jaké máme modifikatory v sql

A
  1. IDENTITY (Počáteční hodnota, počet o kolik zvýšit) = Při vložení nového záznamu vytvoří unikátní číslo o definovanou hodnotu větší než předešlé
  2. DEFAULT = Nastaví se předdefinované hodnota
  3. ZEROFILL = Zobrazuje nuly před čísly, chceme li třeba číslo 23 zobrazit jako 000023, musíme jej definovat jako INT(6) ZEROFILL
  4. BINARY = Umožnuje ukládání textu jako binárního řetězce
How well did you know this?
1
Not at all
2
3
4
5
Perfectly