Cvičení 1

Opakování z přednášky

PostgreSQL

Open-source databázový systém. Pokrývá většinu klíčových vlastností SQL. Zkušenosti přenositelné i na jiné databázové systémy (Microsoft SQL Server, Oracle database, …). Více na jejich webu, zejména se podívejte na dokumentaci.

Na cvičení (i mimo něj) k dispozici na serveru database.inf.upol.cz. Přístup přes SSH - loginy a hesla rozdány na tomto cvičení. Jako první si po přihlášení změňte heslo - každý zodpovídá za zabezpečení svého účtu!

Připojení na server

Server database.inf.upol.cz.

Připojte se přes SSH nebo putty. Login jako do portálu, heslo jste obdrželi na cvičení. Heslo si ihned po přihlášení změňte!

K dispozici je standardní sada nástrojů. Pokud něco chybí, ozvěte se.

Pro správu databáze používejte psql. Login do databáze je stejný jako do systému, výchozí heslo taktéž. I toto heslo si ihned změňte!

Každý má k dispozici svou databázi (jméno stejné jako login). Do vaší databáze můžete jen vy.

PSQL

Klient k databázi PostgreSQL s konzolovým rozhraním.

Spustíme jej příkazem psql v příkazové řádce. Login je stejný jako do systému, heslo je stejné jako původní heslo do systému.

Důležité příkazy PSQL

Klávesové zkratky:

Interní příkazy:

Dostanete-li se do interaktivního módu, kdy místo promptu můžete procházet nějaký soubor/text (např. po použití \? ), tak jej můžete opustit stiskem q.

Budete-li používat externí editor a neznáte žádnou z možností, tak vyberte nano. Je nejjednodušší na ovládání.

VS code s doplňky (či jiný editor)

Chcete-li se vyhnout pravidelnému používání psql, lze se na server připojit i z různých editorů a pracovat vzdáleně. Nejsnazší je asi VS code s doplňkem PostgreSQL (Chris Kolkman).

Práce s PostgreSQL

Datové typy

Pokud není uvedeno jinak, tak každý sloupec může obsahovat ještě hodnotu NULL reprezentující neexistující hodnotu. Více se dozvíte na přednáškách.

Více k typům v PostgreSQL zde.

Příkazy CREATE TABLE, INSERT INTO, DROP TABLE

Dokumentace ke CREATE TABLE.
Dokumentace k INSERT INTO.
Dokumentace k DROP TABLE.

Seznam všech příkazů PostgreSQL.

Problémy na které možná narazíte:

Všechny příkazy mají přepínač --help (tj. např ls --help), který ukáže nápovědu k danému příkazu.

Pokud je výstup nějakého příkazu moc dlouhý a nevleze se na obrazovku, můžete přidat | less na konec příkazů (např ls --help | less). Poté se lze výstupem interaktivně pohybovat. Interaktivní mód opustíte stiskem q.

Něco chybí? Ozvěte se!

Úkoly

Vždy si všechny příkazy pište do skriptu (souboru), ne pouze do psql, abyste se k nim mohli vracet.

  1. Vytvořte si tabulku human pro jednoduchý seznam zaměstnanců obsahující následující informace:
    • jméno
    • příjmení
    • datum narození
    • datum nástupu do zaměstnání
    • číslo kanceláře
    • email
    • web
    • počet dětí
    • pohlaví
      Atributům zvolte vhodné názvy i typy.
  2. Předchozí tabulku naplňte alespoň pěti záznamy.
  3. Zkuste se připojit k databázi některého kolegy.
  4. Smažte svou tabulku human.