SQLite

Kako dostopati do SQLite iz Pythona

Kako dostopati do SQLite iz Pythona
Python je priljubljen in robusten programski jezik, bogat s funkcijami, zaradi katerih je uporaben v številnih primerih, kot so znanost o podatkih, mreženje, avtomatizacija IT, testiranje penetracije in mnogi drugi. Ima tudi preprosto sintakso, ki razvijalcem, ki poznajo druge programske jezike, omogoča enostavno prilagajanje uporabi Pythona.Podatki so povsod in široka paleta programskih aplikacij sodeluje s podatki s pomočjo sistema za upravljanje baz podatkov. SQLite je eden najbolj priljubljenih sistemov za upravljanje baz podatkov v Pythonu.

SQLite je preprost, zmogljiv, odprtokoden in relacijski mehanizem baz podatkov, ki podpira velike programske aplikacije in vdelane sisteme. SQLite je samostojen in zahteva minimalno konfiguracijo, kar olajša njegovo nastavitev in zagon z minimalnim časom. Python ima privzeto vgrajen modul SQLite (sqlite3), zelo intuitiven modul za delo z bazami podatkov SQLite v Pythonu.

V tej vadnici bomo preučili, kako uporabljati Python za delo z bazami podatkov SQLite. Od vzpostavitve povezave do ustvarjanja baz podatkov, branja baz podatkov, posodabljanja in odstranjevanja baz podatkov.

Začnimo z namestitvijo SQLite:

Namestitev SQLite in Pythona

Odvisno od vaše distribucije Linuxa lahko arhiv SQLite prenesete s https: // www.sqlite.org / download.html ali uporabite upravitelja paketov.

Če ga želite namestiti v Debian:

posodobitev sudo apt-get
sudo apt-get namestite sqlite -y

Nato morate imeti nameščeno najnovejšo različico Python3. Python mora biti že privzeto nameščen v vaši distribuciji.

Lupina SQLite

Privzeta metoda za interakcijo z bazami podatkov SQLite je uporaba lupine. Lupina vam omogoča izvajanje ukazov SQL v vrstici ali zbirko za izvajanje funkcij v zbirkah podatkov.

Za zagon lupine SQLite uporabite ukaz:

$ sqlite

Različica SQLite 2.8.17 Vnesite “.pomoč "za navodila

sqlite>

To bi moralo zagnati lupino SQLite s pozivom, ki vam omogoča vnos ukazov. Začnite s tipkanjem ukaza .pomoč za ogled pomoči lupine.

sqlite> .pomoč
.baze podatkov Seznam imen in datotek priloženih zbirk podatkov
.smetišče ?TABELA?... Iznesite bazo podatkov v besedilno obliko
.echo ON | OFF Vklopite ali izklopite ukaz echo
.izhod Izhod iz tega programa
.razložite ON | OFF Vklopite ali izklopite način izhoda, primeren za EXPLAIN.
.header (s) ON | OFF Vklopite ali izklopite prikaz glav
.pomoč Prikaži to sporočilo
.indeksi TABELA Prikaži imena vseh indeksov na TABELI
.mode MODE Način nastavite na eno od "line (s)", "column (s)",
"vstavi", "seznam" ali "html"
----------------------------------------------------------------------

Za izhod iz lupine SQLite uporabite .ukaz quit.

sqlite> .prenehati

V lupini SQLite lahko uporabljate še druge funkcije in operacije. Če si želite na primer ogledati vse zbirke podatkov, lahko uporabite .ukaz baze podatkov.

Toplo priporočam, da poskusite z lupino SQLite in se seznanite, saj vam bo omogočil razumevanje uporabe modula SQLite3 v Pythonu.

Povezovanje z bazo podatkov

Zdaj uporabimo module Python in SQLite3 za interakcijo z bazami podatkov SQLite. Dobro je opozoriti, da obstajajo še drugi moduli Python, s katerimi lahko komunicirate s SQLite. Vendar je SQLite3 preprost in je priložen Pythonu.

Za povezavo z bazo podatkov SQLite si oglejte spodnji skript.

uvozi sqlite3 iz sqlite3 Napaka pri uvozu
def connect_db (db_path):
connection = Brez poskusa:
povezava = sqlite3.poveži (db_path)
print ("Baza podatkov je bila uspešno povezana")
razen Napaka kot e:
print (f "Prišlo je do napake: e")
povratna povezava
connect_db ("/ dom / uporabnik / namizje / predstavitev.sqlite ")

Začnemo z uvozom modulov SQLite in Error.
V vrstici 3 ustvarimo funkcijo connect_db (), ki za argument vzame pot do baze podatkov.
Naslednji del vključuje blok poskus / napaka. Prvi del za argument vzame pot do baze podatkov in vzpostavi povezavo. Upoštevajte, da v SQLite, če navedena baza podatkov ne obstaja, se samodejno ustvari.
Blok napak poskuša zajeti izjeme in jih natisne uporabniku.
V zadnji vrstici pokličemo funkcijo connect_db in posredujemo pot do baze podatkov, ki jo želimo uporabiti ali ustvariti.

OPOMBA: Če želite namesto diska ustvariti pomnilniško bazo podatkov, lahko v povezavi obj določite: pomnilnik.

sqlite3.povezati (“: pomnilnik”)

SQLite Ustvari tabelo

V SQLiteju lahko z lupino SQL ustvarimo tabele z uporabo poizvedbe CREATE TABLE. Splošna sintaksa je:

USTVARI TABELO ime_baze.ime_tabele (
ime_ stolpca podatkovni tip PRIMARNI KLJUČ (stolpci),
podatkovni tip stolpca2_ime,
… StolpecN_ime podatkovni tip,
);

Ne bom se spuščal v ustvarjanje tabel z uporabo lupine SQLite, saj je naš glavni poudarek Python. Če želite izvedeti več, si oglejte dokumentacijo SQL Lite iz spodnjega vira. Zdaj, da uporabimo modula Python in sqlite3 za ustvarjanje tabel baz podatkov, moramo uporabiti predmet kazalke in izvršiti funkcije poizvedb SQL. Upoštevajte spodnjo kodo:

uvozi sqlite3 iz sqlite3 Napaka pri uvozu
def connect_db (db_path):
povezava = Brez
poskusite:
povezava = sqlite3.poveži (db_path)
print ("Baza podatkov je bila uspešno povezana")
razen Napaka kot e:
print (f "Prišlo je do napake: e")
vrni povezavo def run_query (povezava, sql_query):
kurzor = povezava.kazalec ()
poskusite:
kazalec.izvrši (sql_query)
povezavo.zaveži ()
print ("Poizvedba SQL se je uspešno zagnala ... [V redu]")
razen Napaka kot e:
print (f "Poizvedba ni uspela… e")
query = "" "
USTVARI TABELO, ČE NE OBSTAJA prikazuje (
id INTEGER PRIMARNI KLJUČ AVTOINCREMENT,
ime BESEDILO NI NULL,
leto INTGER,
BESEDILO žanra,
BESEDILO države
);
"" "
run_query (connection = connect_db ("/ home / user / Desktop / sql.sqlite "), sql_query = poizvedba)

Pogovorimo se zdaj, kaj naredi zgornja koda - najdemo prvo funkcijo, razloženo zgoraj (glejte). V drugi funkciji, create, kot parametri posredujemo povezavo in poizvedbo. Naslednje vrstice ustvarijo predmet kazalke, s katerim bomo poklicali izvršilno metodo. Kot je bilo omenjeno zgoraj, naslednje vrstice pokličejo predmet kazalca za izvedbo metode in klic posredujejo poizvedbo kot parameter. Blok natisne tudi sporočilo o uspešnem izvajanju poizvedbe. Ko se poizvedba uspešno izvede, povemo SQLiteu, naj uporabi metodo predavanja za shranjevanje sprememb v bazo podatkov. Blok razen lovi izjeme in uporabniku natisne sporočilo o napaki. Na koncu ustvarimo poizvedbo za izvedbo s preprosto sintakso SQLite.

SQLite Vstavi zapise

Če želite podatke dodati v zbirko podatkov SQLite, se lahko potopimo v funkcijo run_query (), ki smo jo uporabili za ustvarjanje, saj lahko zažene katero koli poizvedbo SQLite, ki ji jo posredujemo. Vendar za dodajanje podatkov v tabelo uporabljamo poizvedbo INSERT INTO.

Upoštevajte spodnji blok:

add_shows = "" "
VSTAVITE V
oddaje (id, ime, leto, zvrst, država)
VREDNOTE
("101", "Brooklyn Nine-Nine", "2013", "komedija", "ZDA"),
("201", "Star-Trek: Discovery", "2017", "Sci-Fi", "USA"),
("301", "Star-Trek: Picard", "2020", "Sci-Fi", "ZDA");
"" "run_query (connection = connect_db (" / home / user / Desktop / sql.sqlite "), sql_query = add_shows)

Zdaj moramo poklicati funkcijo run_query in dodati poizvedbo add_shows, da vstavimo podatke v razpredelnico show. Prepričajte se, da tabela, v katero vstavljate podatke, obstaja, da ne pride do napake.

SQLite Delete Records

Za odstranjevanje zapisov iz navedene tabele lahko uporabite tudi funkcijo run_query (). Vse, kar potrebujete, je, da poizvedbo nastavite na DELETE FROM.

Upoštevajte naslednjo podpoizvedbo:

remove = "DELETE FROM prikazuje WHERE name = 'Brooklyn Nine-Nine'" run_query (connection = connect_db ("/ home / user / Deskop / sql.sqlite "), sql_query = odstrani)

Zgornja poizvedba odstranjuje oddajo "Brooklyn Nine-Nine" iz razpredelnice razstav.

Zaključek

Ta vadnica vas je naučila, kako uporabljati Python za dostop do baz podatkov SQLite in interakcijo z njimi. Iz tega, kar ste se naučili iz te vadnice, lahko zdaj ustvarite funkcije, se povežete z bazami podatkov SQLite, ustvarite tabele, vstavite podatke in jih izbrišete. Čeprav je to začetni vodnik za delo z SQLite v Pythonu, bi vas moral začeti učiti druge tehnologije, kot je SQLAlchemy in podobne.

Kako povečati FPS v Linuxu?
FPS pomeni Število sličic na sekundo. Naloga FPS je merjenje hitrosti sličic pri predvajanju video posnetkov ali igranih predstavah. Z enostavnimi bes...
Najboljše laboratorijske igre Oculus App
Če ste lastnik slušalk Oculus, morate biti seznanjeni s stranskim nalaganjem. Sideloading je postopek namestitve vsebine, ki ni shranjena v slušalke. ...
10 najboljših iger za igranje v Ubuntuju
Platforma Windows je bila ena izmed prevladujočih platform za igre na srečo zaradi velikega odstotka iger, ki se danes razvijajo za naravno podporo si...