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ále databáz v Pythone budeme
pokračovať v tvorbe databázy pomocou knižnice PySide6
a
frameworku Qt. Ukážeme si tvorbu otázok pomocou INSERT as
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.
Otázky INSERT
Otázka 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 ako tu použitý kód pre
SQLite, tak 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
Minul 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ále 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ť.