SQLite

Kuidas pääseda SQLite'ile Pythonist

Kuidas pääseda SQLite'ile Pythonist
Python on populaarne ja jõuline programmeerimiskeel, mis sisaldab rikkalikult funktsioone, mis muudavad selle kasutatavaks paljudes olukordades, nagu andmeteadus, võrguvõrk, IT-automatiseerimine, levitamise testimine ja palju muud. Sellel on ka lihtne süntaks, mis võimaldab teisi programmeerimiskeeli tundvatel arendajatel Pythoni kasutamisega hõlpsalt kohaneda.Andmeid on kõikjal ja andmebaaside haldussüsteemi abil suhtlevad andmetega paljud tarkvararakendused. SQLite on Pythoni üks populaarsemaid andmebaaside haldussüsteeme.

SQLite on lihtne, võimas, avatud lähtekoodiga ja relatsiooniline andmebaasimootor, mis toetab suuri tarkvararakendusi ja manussüsteeme. SQLite on eraldiseisev ja nõuab minimaalset seadistamist, mis muudab selle seadistamise ja käitamise eriti lihtsaks minimaalse ajaga. Vaikimisi on Python sisseehitatud SQLite mooduliga (sqlite3), väga intuitiivse mooduliga Pythoni SQLite andmebaasidega töötamiseks.

Selles õpetuses uurime, kuidas Pythoni kasutada SQLite andmebaasidega töötamiseks. Alates ühenduse loomisest kuni andmebaaside loomise, andmebaaside lugemise, andmebaaside värskendamise ja eemaldamiseni.

Alustame SQLite installimisega:

SQLite ja Pythoni installimine

Sõltuvalt teie Linuxi levitamisest saate SQLite arhiivi alla laadida aadressilt https: // www.sqlite.org / allalaadimine.HTML või kasutage paketihaldurit.

Selle installimiseks Debianisse:

sudo apt-get värskendus
sudo apt-get install sqlite -y

Järgmisena peaks teil olema installitud Python3 uusim versioon. Python peaks olema teie vaikimisi teie jaotisse juba eelinstallitud.

SQLite kest

SQLite andmebaasidega suhtlemise vaikemeetod on kest. Kest võimaldab andmebaasis funktsioonide täitmiseks käivitada SQL-i käsud siseselt või kogu.

SQLite kesta käivitamiseks kasutage käsku:

$ sqlite

SQLite versioon 2.8.17 Sisestage.abi ”juhiste saamiseks

sqlite>

See peaks käivitama SQLite kestaga viip, mis võimaldab teil käske sisestada. Alustage käsu tippimisega .abi, et vaadata kesta abi.

sqlite> .abi
.andmebaasid Loetlege lisatud andmebaaside nimed ja failid
.prügimägi ?TABEL?… Andmebaasi tühjendamine tekstivormingus
.kaja SISSE | VÄLJAS Lülitage käsu kaja sisse või välja
.väljumine Sellest programmist väljumine
.seleta ON | OFF Lülitage funktsioon EXPLAIN jaoks sobiv väljundrežiim sisse või välja.
.päis (ed) ON | OFF (välja) Päiste kuvamise sisse- või väljalülitamine
.abi Kuva see sõnum
.indeksid TABEL Näita kõigi tabelis olevate indeksite nimesid
.režiim MODE Valige režiimiks üks "rida", "veerg (id)",
"insert", "list" või "html"
----------------------------------------------------------------------

SQLite kestast väljumiseks kasutage .käsu lõpetamine.

sqlite> .lõpetage

SQLite kestas saab kasutada ka muid funktsioone ja toiminguid. Näiteks kõigi andmebaaside vaatamiseks võite kasutada .andmebaasi käsk.

Soovitan tungivalt katsetada SQLite kestaga ja saada tuttavaks, kuna see võimaldab teil mõista, kuidas Pythonis kasutada SQLite3 moodulit.

Andmebaasiga ühenduse loomine

Kasutagem nüüd Pythoni ja SQLite3 mooduleid SQLite andmebaasidega suhtlemiseks. Hea on märkida, et SQLite'iga suhtlemiseks on ka teisi Pythoni mooduleid. SQLite3 on siiski lihtne ja on komplektis Pythoniga.

SQLite andmebaasiga ühenduse loomiseks kaaluge allolevat skripti.

importige sqlite3 sqlite3-st importiviga
def connect_db (db_path):
ühendus = pole proovinud:
ühendus = sqlite3.ühenda (db_path)
print ("Andmebaasi ühendamine õnnestus")
välja arvatud viga e-na:
print (f "Ilmnes viga: e")
tagasiühendus
connect_db ("/ kodu / kasutaja / töölaud / demo.sqlite ")

Alustame SQLite ja Error moodulite importimisega.
Real 3 loome funktsiooni connect_db (), mis võtab argumendiks andmebaasi tee.
Järgmine osa sisaldab proovimise / tõrke blokeerimist. Esimene osa võtab argumendina andmebaasi tee ja loob ühenduse. Pange tähele, et kui SQLite'is pole määratud andmebaasi, luuakse see automaatselt.
Veaplokk püüab püüda erandeid ja prindib need kasutajale.
Viimases reas kutsume funktsiooni connect_db ja edastame tee andmebaasi, mida soovime kasutada või luua.

MÄRGE: Kui soovite ketta asemel luua mälu andmebaasi, saate ühenduse objektis määrata: mälu.

sqlite3.ühendama (“: mälu”)

SQLite tabeli loomine

SQLite'is saame SQL-i kesta kasutada tabelite loomiseks, kasutades CREATE TABLE Query. Üldine süntaks on järgmine:

CREATE TABLE andmebaasi_nimi.tabeli_nimi (
veeru_nimi andmetüüp PÕHIVÕTI (veerud),
veeru2_nimi andmetüüp,
... veergN_name andmetüüp,
);

Ma ei hakka sukelduma SQLite kestaga tabelite loomisse, kuna meie põhitähelepanu on Pythonil. Lisateabe saamiseks vaadake alloleva ressursi SQL Lite dokumentatsiooni. Nüüd, et andmebaasitabelite loomiseks mooduleid Python ja sqlite3 kasutada, peame kasutama kursori objekti ja käivitama SQL-i päringute funktsioonid. Mõelge allolevale koodile:

importige sqlite3 sqlite3-st importiviga
def connect_db (db_path):
ühendus = puudub
proovige:
ühendus = sqlite3.ühenda (db_path)
print ("Andmebaasi ühendamine õnnestus")
välja arvatud viga e-na:
print (f "Ilmnes viga: e")
tagastage ühendus def run_query (ühendus, sql_query):
kursor = ühendus.kursor ()
proovige:
kursor.käivitama (sql_query)
ühendus.pühenduma ()
print ("SQL-i päringu käivitamine õnnestus ... [OK]")
välja arvatud viga e-na:
print (f "Päring nurjus ... e")
query = "" "
Loo tabel, kui seda pole olemas, näitab (
id INTEGER PRIMARY KEY AUTOINCREMENT,
nimi TEKST EI NULL,
aasta INTGER,
žanr TEKST,
riik TEKST
);
"" "
run_query (ühendus = connect_db ("/ kodu / kasutaja / töölaud / sql.sqlite "), sql_query = päring)

Arutagem nüüd, mida ülaltoodud kood teeb - leiab ülaltoodud esimese funktsiooni (palun vaadake). Teises funktsioonis loome parameetritena ühenduse ja päringu, mille käivitada. Järgmised read loovad kursoriobjekti, mida kasutame meetodi execute kutsumiseks. Nagu eespool mainitud, kutsuvad järgmised read meetodi käivitamiseks kursori objektile ja parameetrina kutsuvad päringu edasi. Plokk prindib ka teate eduka päringu täitmise kohta. Kui päring on edukalt täidetud, käskime SQLite'il andmebaasi muudatuste salvestamiseks kasutada pühendamismeetodit. Välja arvatud plokk püüab erandeid ja prindib veateate kasutajale. Lõpuks loome päringu täitmiseks lihtsa SQLite süntaksiga.

SQLite Sisesta kirjed

Andmete lisamiseks SQLite andmebaasi võime sukelduda funktsiooni run_query (), mida me loome, kuna see võib käivitada mis tahes sellele edastatud SQLite päringu. Andmete lisamiseks tabelisse kasutame siiski päringut INSERT INTO.

Mõelge allpool olevale plokile:

add_shows = "" "
INSERT INTO
saated (id, nimi, aasta, žanr, riik)
VÄÄRTUSED
("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 (ühendus = connect_db (" / kodu / kasutaja / töölaud / sql.sqlite "), sql_query = add_shows)

Nüüd peame kutsuma funktsiooni run_query ja lisama andmete päringu tabelisse sisestamiseks päringu add_shows. Vigade vältimiseks veenduge, et tabel, kuhu sisestate andmeid, on olemas.

SQLite kirjete kustutamine

Määratud tabelist kirjete eemaldamiseks võite kasutada ka funktsiooni run_query (). Kõik, mida vajate, on määrata päring KUSTUTAMISEKS.

Mõelge järgmisele alaküsimusele:

remove = "DELETE FROM" näitab WHERE name = 'Brooklyn Nine-Nine' "run_query (ühendus = connect_db (" / home / user / Deskop / sql.sqlite "), sql_query = eemalda)

Ülaltoodud päring eemaldab saate tabelist saate "Brooklyn Nine-Nine".

Järeldus

Selles õpetuses on õpetatud, kuidas Pythoni abil SQLite andmebaasidele juurde pääseda ja nendega suhelda. Sellest õpetusest õppides saate nüüd luua funktsioone, luua ühenduse SQLite andmebaasidega, luua tabeleid, sisestada andmeid ja need kustutada. Kuigi see on Pythonis SQLite'iga töötamise stardijuhend, peaks see aitama teil õppida ka muid tehnoloogiaid, nagu näiteks SQLAlchemy ja muud.

Kuidas näidata FPS-loendurit Linuxi mängudes
Linuxi mängimine sai suure tõuke, kui Valve teatas Steam-kliendi ja nende mängude Linuxi toest 2012. aastal. Sellest ajast peale on paljud AAA- ja ind...
Sid Meieri Civilization VI allalaadimine ja mängimine Linuxis
Sissejuhatus mängu Civilization 6 on kaasaegne kontseptsioon, mis tutvustati Age of Empires mängude sarjas. Idee oli üsna lihtne; alustaksite kõige põ...
Kuidas installida ja mängida Doomi Linuxis
Doomi sissejuhatus Doom-seeria sai alguse 90ndatel pärast algse Doomi väljaandmist. See oli kohene hitt ja sellest ajast alates on mänguseeria pälvinu...