1. Úvod
    1. Co je DB
    2. Co je relační DB?
    3. Další typy DB (objektové, graph, document, map)
  2. SQL jazyk a RDBMS
    1. normy a dialekty (PL/SQL, T-SQL, SQL99)
    2. MySQL/MariaDB
    3. MS SQL
    4. Oracle
    5. DB2
    6. PostreSQL
    7. Firebird
    8. embeddable DB
    9. NoSQL DBs
  3. Návrh
    1. databáze (schéma)
    2. tabulky a pohledy
    3. datové typy
      1. celočíselné typy
        1. TINYINT = -128 +127
        2. SMALLINT = -32 tis. +32 tis.
        3. MEDIUMINT = -8 mil. +8 mil.
        4. INT, INTENGER = -2 mld. +2 mld.
        5. BIGINT
        6. UNSIGNED
      2. boolean (bit)
      3. desetinná čísla
        1. IEEE desetinná čísla
          1. FLOAT(m,d)
          2. DOUBLE(m,d)
        2. s pevnou řádovou čárkou
          1. DECIMAL(p,s)
      4. datum a čas
      5. ENUM a SET
      6. text
        1. char
        2. varchar
        3. text
        4. znakové sady (charset)
          1. Unicode a UTF-8
          2. Windows 1250 a ostatní
        5. řazení (collate)
      7. binární data (BLOB)
      8. hodnota NULL
    4. atributy sloupců
      1. NULL/NOT NULL
      2. DEFAULT xy
      3. DEFAULT CURRENT_TIMESTAMP
      4. ON UPDATE CURRENT_TIMESTAMP
      5. PRIMARY KEY
      6. AUTO_INCREMENT
      7. UNSIGNED
      8. CHARACTER SET name [COLLATE sort]
    5. normalizace tabulek
      1. začátek
      2. I. normální forma
      3. II. normální forma
      4. III. normální forma
    6. Vztahy
      1. 1:1
      2. 1:n
      3. n:m
    7. Primární a cizí klíče
      1. referenční integrita (omezení cizího klíče)
      2. hiearchie
    8. ER diagramy
  4. Tvorba (DDL)
    1. SQL klienti
      1. mysql CLI
    2. CREATE
      1. typy tabulek
        1. MyISAM
        2. InnoDB
    3. ALTER
    4. DROP
    5. TRUNCTATE
    6. Vzorová DB Sakilla
  5. Dotazování (SELECT)
    1. USE <database>
    2. Základní forma SELECT
      1. všechny sloupce - *
      2. sl1, sl2, sl3
    3. Podmínka WHERE
      1. sloupec
        1. as
        2. DISTINCT
      2. operátor
        1. pro čísla
          1. >
          2. >=
          3. = nebo ==
          4. <> nebo !=
          5. <
          6. <=
        2. datumů
          1. dtto
          2. between X and Y
        3. text
          1. =
          2. LIKE
          3. ? nebo _ - 1 znak
          4. % nebo * - lib. počet zn.
          5. REGEXP
      3. hodnota
        1. číslo
        2. datum
          1. '2014-09-29'
          2. '2014-09-29 9:00'
        3. text
          1. " a " nebo 'a'
    4. Další podmínka
      1. AND - a současně
      2. OR - nebo
      3. NOT - negace (opak)
    5. Řazení výsledků ORDER BY
      1. sl1.
      2. sl2., sl3.
      3. ASC/DESC
    6. COLLATE
    7. LIMIT offset, n
    8. SQL funkce
    9. Agregační funkce
      1. count()
      2. max()
      3. min()
      4. avg()
      5. sum()
    10. GROUP BY
      1. HAVING
    11. Spojování JOIN
      1. CROSS JOIN ("théta")
      2. INNER JOIN
      3. OUTER JOIN
        1. FULL
        2. LEFT
        3. RIGHT
      4. JOIN a NULL
    12. Vnořené (nested) dotazy
    13. UNION
  6. Manipulace (DML)
    1. INSERT
    2. UPDATE
    3. DELETE
  7. Transakce
    1. koncept ACID
    2. transakce a jejich úrovně
    3. podpora v různých RDBMS
    4. zamykání a uváznutí (deadlock)
  8. administrace
    1. Indexy
    2. Systémové databáze a tabulky
    3. Zálohování a obnova
    4. zabezpečení (uživatelé a oprávnění)
  9. Programování
    1. kurzory
    2. stored procedures
    3. stored functions
    4. triggery
    5. drivery JDBC, ODBC