SQLite

Kaip pasiekti „SQLite“ iš „Python“

Kaip pasiekti „SQLite“ iš „Python“
„Python“ yra populiari ir tvirta programavimo kalba, turinti daug funkcijų, leidžiančių ją naudoti įvairiais atvejais, pvz., Duomenų mokslu, tinklų kūrimu, IT automatizavimu, skvarbos testavimu ir daugeliu kitų. Ji taip pat turi paprastą sintaksę, leidžiančią kitas programavimo kalbas mokantiems kūrėjams lengvai prisitaikyti prie „Python“ naudojimo.Duomenų yra visur, o įvairios programinės įrangos programos sąveikauja su duomenimis naudodamosi duomenų bazių valdymo sistema. „SQLite“ yra viena iš populiariausių „Python“ duomenų bazių valdymo sistemų.

SQLite yra paprastas, galingas, atviro kodo ir reliacinis duomenų bazių variklis, palaikantis dideles programinės įrangos programas ir įterptąsias sistemas. „SQLite“ yra atskira ir reikalauja minimalios konfigūracijos, todėl ją ypač lengva nustatyti ir paleisti su minimaliu laiku. Pagal numatytuosius nustatymus „Python“ yra įmontuotas su „SQLite“ moduliu (sqlite3), labai intuityviu moduliu darbui su „SQLite“ duomenų bazėmis „Python“.

Šioje pamokoje apžvelgsime, kaip naudoti „Python“, norint dirbti su SQLite duomenų bazėmis. Nuo ryšio užmezgimo iki duomenų bazių kūrimo, duomenų bazių skaitymo, duomenų bazių atnaujinimo ir pašalinimo.

Pradėkime nuo SQLite diegimo:

SQLite ir Python diegimas

Priklausomai nuo jūsų „Linux“ platinimo, galite atsisiųsti SQLite archyvą iš https: // www.sqlite.org / atsisiųsti.HTML arba naudokite paketų tvarkyklę.

Norėdami jį įdiegti „Debian“:

sudo apt-get atnaujinimas
sudo apt-get install sqlite -y

Tada turėtumėte įdiegti naujausią „Python3“ versiją. Pagal numatytuosius nustatymus „Python“ jau turėtų būti iš anksto įdiegtas jūsų platinimo srityje.

„SQLite Shell“

Numatytasis sąveikos su SQLite duomenų bazėmis metodas yra apvalkalo naudojimas. Korpusas leidžia vykdyti SQL komandas tiesiogiai arba rinkinį, kad būtų galima atlikti duomenų bazių funkcijas.

Norėdami paleisti SQLite apvalkalą, naudokite komandą:

$ sqlite

2 „SQLite“ versija.8.17 Įveskite „.pagalba “instrukcijoms gauti

sqlite>

Tai turėtų paleisti „SQLite“ apvalkalą su raginimu, leidžiančiu įvesti komandas. Pradėkite įvesdami komandą .padėti peržiūrėti apvalkalo pagalbą.

sqlite> .pagalba
.duomenų bazės Pateikite pridėtų duomenų bazių pavadinimus ir failus
.išpilti ?LENTELĖ?... Išmeskite duomenų bazę teksto formatu
.echo ON | OFF Įjunkite arba išjunkite komandos aidą
.exit Išeikite iš šios programos
.paaiškinkite ON | OFF Įjunkite arba išjunkite išvesties režimą, tinkamą EXPLAIN.
.antraštės (-ės) ON (įjungta) | OFF (išjungti) Įjunkite arba išjunkite antraščių rodymą
.Pagalba Rodyti šį pranešimą
.rodikliai TABLE Rodyti visų lentelėje esančių indeksų pavadinimus
.režimas REŽIMAS Nustatykite režimą į vieną iš „eilutės (-ių)“, „stulpelio (-ių)“,
„įterpti“, „sąrašas“ arba „html“
----------------------------------------------------------------------

Norėdami išeiti iš SQLite apvalkalo, naudokite .mesti komandą.

sqlite> .mesti

Yra ir kitų funkcijų bei operacijų, kurias galite naudoti SQLite apvalkale. Pavyzdžiui, norėdami peržiūrėti visas duomenų bazes, galite naudoti .duomenų bazės komanda.

Labai rekomenduoju eksperimentuoti su „SQLite“ apvalkalu ir susipažinti, nes tai leis suprasti, kaip naudoti „SQLite3“ modulį „Python“.

Prisijungimas prie duomenų bazės

Dabar naudokime „Python“ ir „SQLite3“ modulius, kad galėtume sąveikauti su „SQLite“ duomenų bazėmis. Gerai pažymėti, kad yra ir kitų „Python“ modulių, kuriuos galite naudoti sąveikai su „SQLite“. Tačiau „SQLite3“ yra paprastas ir pateikiamas kartu su „Python“.

Apsvarstykite toliau pateiktą scenarijų, kad prisijungtumėte prie SQLite duomenų bazės.

importuoti sqlite3 iš sqlite3 importavimo klaida
def connect_db (db_path):
ryšys = Nieko nebandykite:
jungtis = sqlite3.prisijungti (db_path)
spausdinti ("Duomenų bazė sėkmingai prijungta")
išskyrus klaidą kaip e:
spausdinti (f "Įvyko klaida: e")
grąžinimo ryšys
connect_db ("/ namai / vartotojas / darbalaukis / demonstracinė versija.sqlite ")

Pirmiausia importuojame „SQLite“ ir „Error“ modulius.
3 eilutėje sukuriame funkciją connect_db (), kurios argumentu laikomas duomenų bazės kelias.
Kitoje dalyje yra bandymo / klaidos blokas. Pirmoji dalis nurodo duomenų bazės kelią kaip argumentą ir nustato ryšį. Atkreipkite dėmesį, kad SQLite, jei nurodytos duomenų bazės nėra, ji sukuriama automatiškai.
Klaidų blokas bando sugauti išimtis ir atsispausdina jas vartotojui.
Paskutinėje eilutėje iškviečiame connect_db funkciją ir perduodame kelią į duomenų bazę, kurią norime naudoti ar sukurti.

PASTABA: Jei norite sukurti atminties duomenų bazę, o ne diską, „connect obj“ galite nurodyti: „memory“.

sqlite3.prisijungti („: atmintis“)

SQLite Sukurti lentelę

„SQLite“ galime naudoti SQL apvalkalą lentelėms kurti naudodami „CREATE TABLE“ užklausą. Bendroji sintaksė yra tokia:

Sukurti lentelę duomenų bazės_vardas.lentelės_vardas (
column_name duomenų tipas PRIMARY RAKTAS (stulpeliai (-iai),
column2_name duomenų tipas,
... stulpelisN_name duomenų tipas,
);

Nenorėsiu kurti lentelių naudodamas SQLite apvalkalą, nes pagrindinis mūsų tikslas yra „Python“. Apsvarstykite „SQL Lite“ dokumentaciją iš toliau pateikto šaltinio, kad sužinotumėte daugiau. Dabar, norėdami naudoti „Python“ ir „sqlite3“ modulius duomenų bazės lentelėms kurti, turime naudoti žymeklio objektą ir vykdyti SQL užklausų funkcijas. Apsvarstykite toliau pateiktą kodą:

importuoti sqlite3 iš sqlite3 importavimo klaida
def connect_db (db_path):
ryšys = Nėra
bandyti:
jungtis = sqlite3.prisijungti (db_path)
spausdinti („Duomenų bazė sėkmingai prijungta“)
išskyrus klaidą kaip e:
spausdinti (f "Įvyko klaida: e")
grąžinti ryšį def run_query (ryšys, sql_query):
žymeklis = ryšys.žymeklis ()
bandyti:
žymeklis.vykdyti (sql_query)
ryšį.įsipareigoti ()
spausdinti ("SQL užklausa sėkmingai paleista ... [Gerai]")
išskyrus klaidą kaip e:
spausdinti (f „Užklausa nepavyko ... e“)
užklausa = "" "
Sukurti lentelę, jei nėra, rodo (
id INTEGER PAGRINDINIO PAGRINDINIO AUTOINCREMENT,
pavadinimas TEKSTAS NENUOL,
metai INTGER,
žanras TEKSTAS,
šalis TEKSTAS
);
"" "
run_query (ryšys = connect_db ("/ namai / vartotojas / darbalaukis / sql.sqlite "), sql_query = užklausa)

Dabar aptarkime, ką daro aukščiau pateiktas kodas - suraskite pirmąją pirmiau paaiškintą funkciją (prašome kreiptis). Antroje funkcijoje sukurkite, kaip parametrus, mes perduodame ryšį ir užklausą. Šios eilutės sukuria žymeklio objektą, kurį naudosime metodo execute iškvietimui. Kaip minėta aukščiau, kitose eilutėse iškviečiamas žymeklio objektas, kad būtų įvykdytas metodas, ir kaip parametras iškvietimas perduoda užklausą. Blokas taip pat atsispausdina pranešimą apie sėkmingą užklausos vykdymą. Kai užklausa bus sėkmingai įvykdyta, liepiame SQLite naudoti atlikimo metodą duomenų bazės pakeitimams išsaugoti. Išskyrus bloką, sugaunamos išimtys ir atsispausdinamas klaidos pranešimas vartotojui. Galiausiai sukuriame užklausą vykdyti naudodami paprastą SQLite sintaksę.

SQLite Įterpti įrašus

Norėdami pridėti duomenų į SQLite duomenų bazę, galime pasinerti į run_query () funkciją, kurią naudojome kurdami, nes ji gali paleisti bet kurią jai perduotą SQLite užklausą. Tačiau duomenims pridėti prie lentelės naudojame užklausą INSERT INTO.

Apsvarstykite toliau pateiktą bloką:

add_shows = "" "
ĮDĖTI
laidos (ID, vardas, metai, žanras, šalis)
VERTYBĖS
(„101“, „Brooklyn Devyni-Devyni“, „2013“, „komedija“, „JAV“),
(„201“, „Star-Trek: Discovery“, „2017“, „Sci-Fi“, „USA“),
(„301“, „Star-Trek: Picard“, „2020“, „Sci-Fi“, „USA“);
"" "run_query (ryšys = connect_db (" / namai / vartotojas / darbalaukis / sql.sqlite "), sql_query = add_shows)

Dabar turime iškviesti funkciją run_query ir pridėti užklausą add_shows, kad įterptumėte duomenis į parodymų lentelę. Kad išvengtumėte klaidos, įsitikinkite, kad lentelė, į kurią įterpiate duomenis, egzistuoja.

SQLite Ištrinti įrašus

Taip pat galite naudoti funkciją run_query (), kad pašalintumėte įrašus iš nurodytos lentelės. Viskas, ko jums reikia, yra nustatyti užklausą kaip DELETE FROM.

Apsvarstykite šią antrinę užklausą:

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

Pirmiau pateikta užklausa pašalina laidą „Brooklyn Nine-Nine“ iš parodų lentelės.

Išvada

Ši pamoka išmokė, kaip naudoti „Python“, norint pasiekti ir sąveikauti su „SQLite“ duomenų bazėmis. Iš to, ko išmokote iš šios mokymo programos, dabar galite kurti funkcijas, prisijungti prie SQLite duomenų bazių, kurti lenteles, įterpti duomenis ir juos ištrinti. Nors tai yra pradinis vadovas dirbant su „SQLite“ sistemoje „Python“, tai turėtų padėti pradėti mokytis kitų technologijų, tokių kaip „SQLAlchemy“ ir kitos.

5 geriausios žaidimų fiksavimo kortos
Visi mes matėme ir pamėgome srautinius žaidimus „YouTube“. „PewDiePie“, „Jakesepticye“ ir „Markiplier“ yra tik vieni iš geriausių žaidėjų, kurie uždir...
Kaip sukurti žaidimą „Linux“
Prieš dešimtmetį nedaugelis „Linux“ vartotojų numatė, kad jų mėgstama operacinė sistema vieną dieną bus populiari komercinių vaizdo žaidimų žaidimų pl...
Atvirojo kodo komercinių žaidimų variklių uostai
Nemokami atvirojo kodo ir įvairių platformų žaidimų varikliai gali būti naudojami žaidžiant senus ir kai kuriuos gana naujus žaidimų pavadinimus. Šiam...