8. diel - Založenie databázy v PySide6 a QtSql - Ukladanie záznamov
V predchádzajúcej lekcii, Založenie databázy v PySide6 a QtSql, sme si vysvetlili základy práce s
SQL a Qt frameworkom v konzolovom prostredí pomocou knižnice
PySide6.
V nasledujúcom tutoriáli databáz v Pythone budeme
pokračovať v tvorbe databázy pomocou knižnice PySide6 a
frameworku Qt. Ukážeme si tvorbu dopytov pomocou
INSERT a s tým spojené riziká týkajúce sa SQL
Injection. Vysvetlíme si, ako tento problém riešiť. Nakoniec sa
zameriame na ukladanie záznamov.
Dopyty INSERT
Dopyt INSERT je SQL príkaz, ktorý slúži na vloženie nových
záznamov do tabuľky v databáze. Nasledujúce konštanty sú univerzálne pre
obe naše použité databázy. Rovnako ako v lekcii Založenie databázy
v PySide6 a QtSql je v priloženom archíve použitý kód pre SQLite, aj
pre databázu 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) """
Zamyslime sa nad tým, prečo sú v kóde použité dvojbodky, napríklad tu:
VALUES(:author, :title). Dôvodom je bezpečnosť. Nejde totiž o
priame parametre, ale o zástupné texty. O bezpečnosti si teraz musíme
povedať viac.
...koniec náhľadu článku...
Pokračuj ďalej
Došiel si až sem a to je super! Veríme, že ti prvé lekcie ukázali niečo nového a užitočného.
Chceš v kurze pokračovať? Prejdi do prémiové sekcie.
Kúpiť tento kurz
Obsah článku spadá pod licenciu Premium, kúpou článku súhlasíš so zmluvnými podmienkami.
- Neobmedzený a trvalý prístup k jednotlivým lekciím.
- Kvalitné znalosti v oblasti IT.
- Zručnosti, ktoré ti pomôžu získať vysnívanú a dobre platenú prácu.
Popis článku
Požadovaný článok má nasledujúci obsah:
V tomto tutoriáli databáz v Pythone budeme pokračovať v tvorbe databázy pomocou knižnice PySide6 a zameriame sa na ukladanie záznamov.
Kredity získaš, keď podporíš našu sieť. To môžeš urobiť buď zaslaním symbolickej sumy na podporu prevádzky alebo pridaním obsahu na sieť.