NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Lekce 8 - Založení databáze v PySide6 a QtSql - Ukládání záznamů

V předchozí lekci, Založení databáze v PySide6 a QtSql, jsme si vysvětlili základy práce s SQL a Qt frameworkem v konzolovém prostředí pomocí knihovny PySide6.

V následujícím tutoriálu databází v Pythonu budeme pokračovat v tvorbě databáze pomocí knihovny PySide6 a frameworku Qt. Ukážeme si tvorbu dotazů pomocí INSERT a s tím spojená rizika týkající se SQL Injection. Vysvětlíme si, jak tento problém řešit. Nakonec se zaměříme na ukládání záznamů.

Dotazy INSERT

Dotaz INSERT je SQL příkaz, který slouží k vložení nových záznamů do tabulky v databázi. Následující konstanty jsou univerzální pro obě naše použité databáze. Stejně jako v lekci Založení databáze v PySide6 a QtSql je v přiloženém archivu jak zde použitý kód pro SQLite, tak i pro databázi PostgreSQL:

INSERT_AUTHOR = """
    INSERT INTO author(name) VALUES(:name)
    """

INSERT_BOOK = """
    INSERT INTO book(author_id, title) VALUES(:author, :title)
    """

INSERT_GENRE = """
    INSERT INTO genre(title) VALUES(:title)
    """

INSERT_BOOK_GENRE = """
    INSERT INTO book_genre(book_id, genre_id) VALUES(:book, :genre)
    """

Zamysleme se nad tím, proč jsou v kódu použity dvojtečky, například zde: VALUES(:author, :title). Důvodem je bezpečnost. Nejde totiž o přímé parametry, nýbrž o zástupné texty. O bezpečnosti si nyní musíme říct více.


 

...konec náhledu článku...
Pokračuj dál

Znalosti v hodnotě stovek tisíc získáš za pár korun

Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.

Koupit tento kurz

Koupit všechny aktuálně dostupné lekce s funkcí odevzdávání úloh za pouhých 225 Kč
Aktuální stav konta 0 Kč
Koupí tohoto balíčku získáš přístup ke všem 10 článkům (10 lekcí) tohoto kurzu.

Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.

Co od nás v dalších lekcích dostaneš?
  • Neomezený a trvalý přístup k jednotlivým lekcím.
  • Kvalitní znalosti v oblasti IT.
  • Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.

Popis článku

Požadovaný článek má následující obsah:

V tomto tutoriálu databází v Pythonu budeme pokračovat v tvorbě databáze pomocí knihovny PySide6 a zaměříme se na ukládání záznamů.

Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.

Článek pro vás napsal Virlupus
Avatar
Autor se věnuje webovým aplikacím, skladově-účetnímu softwaru, 3D grafice, lexiální analýze a parserování. Studuje fyziku na MFF UK. Učil IT na střední škole.
Aktivity