In het informatietijdperk waarin we leven, kunnen we zien hoeveel gegevens de wereld uitwisselt. We zijn in essentie bezig met het maken, opslaan en ophalen van gegevens! Er zou een manier moeten zijn om dat allemaal aan te pakken - het zou niet overal verspreid kunnen worden zonder enig management, toch? Hier komt het databasebeheersysteem (DBMS).
De DBMS is een softwaresysteem waarmee u gegevens uit een database kunt maken, opslaan, wijzigen, ophalen en op andere manieren kunt verwerken. Zulke systemen variëren ook in grootte, variërend van kleine systemen die gewoon op je pc draaien tot grotere systemen die op mainframes draaien.
Onze focus in deze tutorial ligt op Python in plaats van databaseontwerp. Ja, Python is wonderwel in staat om te communiceren met databases, en dit is wat ik je in deze tutorial ga laten zien.
Laten we beginnen!
Zoals hierboven vermeld, kan Python communiceren met databases. Maar hoe kan het dat doen? Python gebruikt de zogenaamde Python Database API om te communiceren met databases. Met deze API kunnen we verschillende databasebeheersystemen (DBMS) programmeren. Voor die verschillende DBMS is het proces dat op het codeniveau wordt gevolgd hetzelfde, en wel als volgt:
SQLite is een open-source, volledig functionele, op zichzelf staande (vereist weinig ondersteuning van externe bibliotheken), zonder server (vereist geen server om de database-engine uit te voeren, en is een lokaal opgeslagen database), nul-configuratie (niets installeren of configureren), op SQL gebaseerd lichtgewicht databasebeheersysteem (SQL-query's kunnen op SQLite-tabellen worden uitgevoerd) en gebruikt een gegevensbestand om gegevens op te slaan.
Het leuke om te weten is dat SQLite wordt gebruikt door grote bedrijven zoals Google, Apple, Microsoft, etc., waardoor het zeer betrouwbaar is. In deze tutorial gaan we SQLite gebruiken om te communiceren met de database, en meer specifiek werken met de sqlite3-module in Python.
Zoals hierboven vermeld, houdt het werken met databases in vijf hoofdstappen. Laten we die stappen in actie zien.
Deze stap wordt als volgt bereikt:
conn = sqlite3.connect ('company.db')
Zoals vermeld in de sqlite3
documentatie:
Om de module te gebruiken, moet u eerst een makenVerbinding
object dat de database vertegenwoordigt.
In de bovenstaande code, merk op dat de gegevens in het bestand worden opgeslagen company.db
.
De volgende stap in het werken met de database is het maken van een cursor, als volgt:
curs = conn.cursor ()
Na verbinding te hebben gemaakt met de database en een cursor te maken, zijn we nu klaar om met gegevens te werken (interacteren). Met andere woorden, we kunnen nu SQL-opdrachten uitvoeren in de database company.db
.
Laten we zeggen dat we een nieuwe tabel willen maken werknemer
in onze database bedrijf
. In dit geval moeten we een SQL-opdracht uitvoeren. Om dat te doen, zullen we de execute ()
methode van de sqlite3
module. De Python-verklaring ziet er dus als volgt uit:
curs.execute ('create table employee (name, age)')
Deze instructie voert een SQL-opdracht uit waarmee een tabel met de naam wordt gemaakt werknemer
, met twee kolommen (velden) naam
en leeftijd
.
We kunnen nu een nieuwe SQL-opdracht uitvoeren die als volgt gegevens in de tabel invoegt:
curs.execute ("invoegen in werknemerswaarden ('Ali', 28)")
U kunt ook meerdere waarden tegelijk invoegen, als volgt:
waarden = [('Brad', 54), ('Ross', 34), ('Muhammad', 28), ('Bilal', 44)]
In dit geval, in plaats van de methode te gebruiken execute ()
, we zullen de methode gebruiken executemany ()
om de bovenstaande meerdere waarden uit te voeren.
curs.executemany ('invoegen in werknemerswaarden (?,?)', waarden)
In deze stap willen we de wijzigingen die we in de vorige stap hebben aangebracht (commit) toepassen. Dit gaat eenvoudigweg als volgt:
conn.commit ()
Na het uitvoeren van onze manipulaties en het uitvoeren van de wijzigingen, zal de laatste stap zijn om de verbinding te sluiten:
conn.close ()
Laten we alle stappen samenvoegen in één script. Het programma ziet er als volgt uit (merk op dat het moet importeren de sqlite3
module eerst):
import sqlite3 conn = sqlite3.connect ('company.db') curs = conn.cursor () curs.execute ('create table employee (name, age)') curs.execute ("invoegen in werknemerswaarden ('Ali', 28) ") waarden = [('Brad', 54), ('Ross', 34), ('Muhammad', 28), ('Bilal', 44)] curs.executemany ('invoegen in werknemerswaarden (? ,?) ', waarden) conn.commit () conn.close ()
Als u het script uitvoert, krijgt u een bestand met de naam company.db
in je huidige map. Download dit bestand, we zullen het in de volgende stap gebruiken.
Nadat we een database en een tabel hebben gemaakt en wat gegevens hebben toegevoegd, laten we zien wat erin zit company.db
(het bestand dat je hebt gedownload in de bovenstaande sectie). Hiervoor gaan we een mooie tool gebruiken: DB Browser voor SQLite. Ga je gang en download de tool op je machine. Zodra je het programma opent, zou je een scherm moeten krijgen dat er als volgt uitziet:
Open de database met behulp van de Open Database knop bovenaan, in welk geval u de Database structuur, als volgt:
Merk op dat we de tafel hebben werknemer
vermeld, met twee velden naam
en leeftijd
.
Om te bevestigen dat onze code hierboven werkte en de gegevens zijn toegevoegd aan de tabel, klikt u op de Door gegevens bladeren tab. Je zou iets als het volgende moeten zien:
Dus, zoals je kunt zien, een database (bedrijf
) en een tafel (werknemer
) zijn gemaakt en gegevens zijn met succes aan de tabel toegevoegd.
Deze tutorial was een krasje aan de oppervlakte om je op weg te helpen met het werken met databases met Python. U kunt meer informatie krijgen over meer methoden uit de sqlite3
module, waar u verschillende databasebewerkingen kunt uitvoeren, zoals het bijwerken en opvragen van de database. Veel plezier!