SQLite

Ako získať prístup k SQLite z Pythonu

Ako získať prístup k SQLite z Pythonu
Python je populárny a robustný programovací jazyk bohatý na funkcie, vďaka ktorým je použiteľný v širokej škále prípadov, ako je dátová veda, sieťové pripojenie, automatizácia IT, penetračné testovanie a mnoho ďalších. Má tiež jednoduchú syntax, ktorá umožňuje vývojárom, ktorí poznajú iné programovacie jazyky, ľahko sa adaptovať na používanie jazyka Python.Dáta sú všade a so softvérom interaguje široká škála softvérových aplikácií pomocou systému správy databáz. SQLite je jedným z najpopulárnejších systémov na správu databáz v Pythone.

SQLite je jednoduchý, výkonný, open-source a relačný databázový stroj, ktorý podporuje veľké softvérové ​​aplikácie a zabudované systémy. SQLite je samostatný server a vyžaduje minimálnu konfiguráciu, vďaka čomu je jeho nastavenie a spustenie mimoriadne jednoduché s minimálnym časom. V predvolenom nastavení je Python zabudovaný s modulom SQLite (sqlite3), veľmi intuitívnym modulom na prácu s databázami SQLite v Pythone.

V tomto tutoriále sa pozrieme na to, ako používať Python na prácu s databázami SQLite. Od nadviazania spojenia s vytváraním databáz, čítaním databáz, aktualizáciou a odstraňovaním databáz.

Začnime inštaláciou SQLite:

Inštalácia SQLite a Python

V závislosti na vašej distribúcii Linuxu si môžete stiahnuť archív SQLite z adresy https: // www.sqlite.org / stiahnutie.html alebo použite správcu balíkov.

Inštalácia na Debian:

sudo apt-get aktualizácia
sudo apt-get nainštalovať sqlite -y

Ďalej by ste mali mať nainštalovanú najnovšiu verziu Python3. Python by už mal byť vo vašej distribúcii predvolene predinštalovaný.

SQLite Shell

Predvolenou metódou interakcie s databázami SQLite je použitie shellu. Shell vám umožňuje vykonávať príkazy SQL inline alebo kolekciu na vykonávanie funkcií v databázach.

Ak chcete spustiť shell SQLite, použite príkaz:

$ sqlite

SQLite verzia 2.8.17 Zadajte „.pomoc “

sqlite>

Toto by malo spustiť shell SQLite s výzvou, ktorá vám umožní zadávať príkazy. Začnite zadaním príkazu .pomoc na zobrazenie pomocníka shell.

sqlite> .Pomoc
.databázy Zoznam mien a súborov pripojených databáz
.skládka ?TABUĽKA?... Vypíše databázu v textovom formáte
.echo ON | OFF Zapnutie alebo vypnutie echa príkazu
.ukončiť Ukončiť tento program
.vysvetlite ON | OFF Zapnutie alebo vypnutie výstupného režimu vhodného pre VYSVETLENIE.
.hlavičky ZAPNUTÉ | VYPNUTÉ Zapnutie alebo vypnutie zobrazenia hlavičiek
.help Zobraziť túto správu
.indexy TABLE Zobraziť názvy všetkých indexov v TABUĽKE
.mode MODE Nastaví režim na jeden z „riadkov“, „stĺpcov“,,
„insert“, „list“ alebo „html“
----------------------------------------------------------------------

Ak chcete opustiť shell SQLite, použite .ukončiť príkaz.

sqlite> .skončiť

Vo vnútri prostredia SQLite môžete použiť ďalšie funkcie a operácie. Napríklad na zobrazenie všetkých databáz môžete použiť .príkaz databázy.

Dôrazne odporúčam experimentovať s shellom SQLite a oboznámiť sa, pretože vám umožní pochopiť, ako používať modul SQLite3 v Pythone.

Pripojenie k databáze

Poďme teraz na interakciu s databázami SQLite použiť moduly Python a SQLite3. Je dobré si uvedomiť, že existujú aj ďalšie moduly Pythonu, ktoré môžete použiť na interakciu s SQLite. SQLite3 je však jednoduchý a dodáva sa s balíkom Python.

Zvážte skript uvedený nižšie na pripojenie k databáze SQLite.

Chyba importu sqlite3 z importu sqlite3
def connect_db (db_path):
pripojenie = žiadne vyskúšať:
pripojenie = sqlite3.pripojiť (db_path)
print ("Databáza bola úspešne pripojená")
okrem chyby ako e:
tlač (f „Vyskytla sa chyba: e“)
spätné pripojenie
connect_db ("/ home / user / Desktop / demo.sqlite ")

Začneme importom modulov SQLite a Error.
V riadku 3 vytvoríme funkciu connect_db (), ktorá ako argument vezme cestu k databáze.
Ďalšia časť obsahuje blok vyskúšania / chyby. Prvá časť berie ako argument cestu k databáze a nadväzuje spojenie. Upozorňujeme, že ak v SQLite zadaná databáza neexistuje, vytvorí sa automaticky.
Chybový blok sa pokúsi zachytiť výnimky a vytlačí ich používateľovi.
V záverečnom riadku zavoláme funkciu connect_db a odovzdáme cestu k databáze, ktorú chceme použiť alebo vytvoriť.

POZNÁMKA: Ak chcete namiesto disku vytvoriť pamäťovú databázu, môžete určiť: pamäť v objekte connect obj.

sqlite3.pripojiť („: pamäť“)

Vytvoriť tabuľku SQLite

V SQLite môžeme pomocou shellu SQL vytvárať tabuľky pomocou dotazu CREATE TABLE. Všeobecná syntax je nasledovná:

CREATE TABLE database_name.nazov_tabulky (
column_name datatype PRIMARY KEY (stĺpce),
column2_name datatype,
… StĺpecN_name typ údajov,
);

Nebudem sa ponárať do vytvárania tabuliek pomocou SQLite shell, pretože naším primárnym zameraním je Python. Ak sa chcete dozvedieť viac, pozrite si dokumentáciu k SQL Lite z nižšie uvedeného zdroja. Teraz, aby sme mohli na vytvorenie databázových tabuliek použiť moduly Python a sqlite3, musíme použiť objekt kurzora a vykonať funkcie dotazov SQL. Zvážte kód uvedený nižšie:

Chyba importu sqlite3 z importu sqlite3
def connect_db (db_path):
pripojenie = žiadne
skúste:
pripojenie = sqlite3.pripojiť (db_path)
print ("Databáza bola úspešne pripojená")
okrem chyby ako e:
tlač (f „Vyskytla sa chyba: e“)
return connection def run_query (connection, sql_query):
kurzor = spojenie.kurzor ()
skúste:
kurzor.vykonať (sql_query)
spojenie.spáchať ()
print ("SQL dotaz bol úspešne spustený ... [OK]")
okrem chyby ako e:
tlač (f „Dopyt zlyhal ... e“)
dotaz = "" "
VYTVORIŤ TABUĽKU, AK NEEXISTUJE ukazuje (
id INTEGER PRIMÁRNY KLÍČ AUTOMATICKÝ PRÍSPEVOK,
meno TEXT NIE JE NULL,
ročník INTGER,
žánrový TEXT,
krajina TEXT
);
„“ „
run_query (connection = connect_db ("/ home / user / Desktop / sql.sqlite "), sql_query = dopyt)

Poďme teraz diskutovať o tom, čo vyššie uvedený kód nájde - nájdeme prvú vyššie vysvetlenú funkciu (pozrite si odkaz). V druhej funkcii create vytvoríme, odovzdáme spojenie a dopyt, ktorý sa má vykonať ako parametre. Nasledujúce riadky vytvárajú kurzorový objekt, ktorý použijeme na vyvolanie metódy execute. Ako už bolo spomenuté vyššie, ďalšie riadky volajú objekt kurzora, aby vykonal metódu, a volanie odovzdá dopyt ako parameter. Blok tiež vytlačí správu o úspešnom vykonaní dotazu. Po úspešnom vykonaní dotazu povieme SQLite, aby na uloženie zmien do databázy použila metódu commit. Blok okrem zachytí výnimky a vytlačí chybové hlásenie používateľovi. Nakoniec vytvoríme dotaz na vykonanie pomocou jednoduchej syntaxe SQLite.

Vložte záznamy SQLite

Ak chcete pridať údaje do databázy SQLite, môžeme sa ponoriť do funkcie run_query (), ktorú sme vytvorili, pretože dokáže spustiť akýkoľvek dotaz SQLite, ktorý jej odovzdáme. Na doplnenie údajov do tabuľky však používame dotaz INSERT INTO.

Zvážte blok uvedený nižšie:

add_shows = "" "
VLOŽIŤ DO
predstavenia (id, meno, rok, žáner, krajina)
HODNOTY
(„101“, „Brooklyn Nine-Nine“, „2013“, „komédia“, „USA“),
(„201“, „Star-Trek: Discovery“, „2017“, „Sci-Fi“, „USA“),
(„301“, „Star-Trek: Picard“, „2020“, „Sci-Fi“, „USA“);
"" "run_query (connection = connect_db (" / home / user / Desktop / sql. ".sqlite "), sql_query = add_shows)

Teraz musíme zavolať funkciu run_query a pridať prístupový dotaz add_shows na vloženie údajov do tabuľky show. Uistite sa, že tabuľka, do ktorej vkladáte údaje, existuje, aby sa zabránilo chybe.

SQLite mazať záznamy

Môžete tiež použiť funkciu run_query () na odstránenie záznamov zo zadanej tabuľky. Všetko, čo potrebujete, je nastaviť dopyt ako ODSTRÁNIŤ Z.

Zvážte nasledujúci čiastkový dotaz:

remove = "DELETE FROM shows WHERE name = 'Brooklyn Nine-Nine'" run_query (connection = connect_db ("/ home / user / Deskop / sql).sqlite "), sql_query = odstrániť)

Vyššie uvedený dopyt odstráni reláciu „Brooklyn Nine-Nine“ z tabuľky prehliadok.

Záver

Tento tutoriál vás naučí, ako používať Python na prístup a interakciu s databázami SQLite. Z toho, čo ste sa naučili z tohto tutoriálu, môžete teraz vytvárať funkcie, pripájať sa k databázam SQLite, vytvárať tabuľky, vkladať údaje a mazať ich. Aj keď je to úvodný sprievodca prácou s SQLite v Pythone, mal by vám pomôcť začať sa učiť ďalšie technológie, ako napríklad SQLAlchemy a podobné.

Hry Ako zvýšiť rýchlosť FPS v systéme Linux?
Ako zvýšiť rýchlosť FPS v systéme Linux?
FPS znamená Počet snímok za sekundu. Úlohou FPS je merať snímkovú frekvenciu pri prehrávaní videa alebo herných výkonoch. Jednoducho povedané, počet n...
Hry Najlepšie hry Oculus App Lab
Najlepšie hry Oculus App Lab
Ak ste vlastníkom náhlavnej súpravy Oculus, musíte byť informovaní o bočnom nakladaní. Sideloading je proces inštalácie neuloženého obsahu do náhlavne...
Hry Top 10 hier, ktoré sa dajú hrať na Ubuntu
Top 10 hier, ktoré sa dajú hrať na Ubuntu
Platforma Windows je jednou z dominujúcich platforiem pre hry kvôli obrovskému percentu hier, ktoré sa dnes vyvíjajú na natívnu podporu systému Window...