Databáze 4

41. hodina DVOP WBB


Matěj Cajthaml — SSPŠ

©

Opakování

K čemu slouží OFFSET?
Co je to SQL injection a jak se řeší?
Co je to dekompozice?
K čemu slouží ALTER TABLE?
Jak funguje propojení tabulek v postgresu?

Další funkcionalitu Postgresu

Views

  • ukládáme SELECT dotaz
  • můžeme vytvořit materializovaný pohled
  • dotazujeme se na ní jako na tabulku

Views

Schémata

  • umožňují rozdělit databázi na logické části
  • poddatabáze
  • při práci s databází je nutné uvádět schéma
  • v základu public
  • SET schema 'public';
  • CREATE SCHEMA "cats_idle";

Ve většině aplikací se nepíší SQL dotazy přímo. Proč?

ORM

  • Object Relational Mapping
  • mapování objektů v daném jazyce na tabulky v databázi
  • vytvoříme si třídu, která reprezentuje tabulku
  • instance třídy reprezentuje řádek v tabulce
  • lehčí vybírání (nástavba přímo v jazyce)
  • různá komunikace

ORM

  • Doctrine
  • TypeORM
  • Prisma
  • Sequelize
  • Knex

Způsoby uchování dat

  • active record
  • data mapper

Jaké data a v jakém formátě by se data měla v DB uchovávat?

Co je to atomizace?

Nezmíněné SQL funkcionality

  • triggers
  • procedury
  • funkce
  • kurzory
  • transakce

Správný návrh databáze

Práce

Navrhněme si databázi!

Děkuji za pozornost!

  • matej.cajthaml@ssps.cz
  • https://ssps.cajthaml.eu/