SQLite -databaser med Python

SQLite -databaser med Python
SQLite brukes til databasestyring. Det kalles lite fordi det er lett og ikke for tunge databaser, men heller for små og konsise databaser. Sqlite-biblioteket er selvstendig, serverløs, null-konfigurasjon og transaksjonell. I denne opplæringen vil vi lære om hvordan du lager databaser og administrerer dem ved hjelp av SQLite.

SQLite kommer forhåndsinstallert med Python, og det er derfor ikke nødvendig å installere noen utvendige moduler. Vi kan komme rett til oppgaven for hånden.

Trinn 1: Opprette et bord

Den første tingen å gjøre er å lage et tilkoblingsobjekt. Vær oppmerksom på at argumentet det tar er navnet på databasen, som kan være hva du vil med en .DB -forlengelse. I mitt tilfelle har jeg kalt det kontakter.db.

Importer SQLite3
Tilkobling = SQLite3.koble til ('kontakter.db ')

Deretter oppretter du et markørobjekt.

Markør = tilkobling.markør ()

Nå kan du bruke Execute () -metoden for å lage en tabell. Som et argument legger vi "lage tabell" og navnet på tabellen du vil lage og medlemmene i den tabellen og deres respektive datatyper. I mitt tilfelle har jeg tre argumenter med deres respektive datatyper - First_name: Text, Last_name: Text, and Phone_number: Text. SQLite tilbyr totalt 5 forskjellige typer datatyper: null, heltall (eks: 1985), ekte (eks: 78.9), tekst, og Blob (eks: bilde, mp3, etc.). Ytterligere detaljer om datatyper finner du på https: // www.sqlite.org/datatype3.html. I dette tilfellet må du sørge for å plassere den første braketten er under C i Create Table. Hvis avstanden er feil, får du en feil! Så bruker vi Commit () -metoden for å utføre hele saken. Og til slutt lukker vi forbindelsen ved hjelp av Close ().

markør.Utfør ("Lag tabellkontakter (First_name Text, Last_name Text, Phone_number Text)")
forbindelse.begå()
forbindelse.Lukk()

Trinn 2: Legge til data i tabellen

For å sette inn enhver verdi i tabellen, bruker vi "Sett inn i kontaktverdien". Vi kan fjerne "opprette tabell" -linjen når tabellen er opprettet. Og i stedet skriver vi følgende linje.

markør.Utfør ("Sett inn i kontaktverdier ('Kaly', 'Raj', '514-555-5555')")

Vær oppmerksom på at jeg besto tre argumenter: 'Kaly', 'Raj' og '514-555-5555'. Disse tre argumentene ble tidligere spesifisert som fornavn, etternavn og telefonnummer. Legg også merke til at sitatene må være riktig plassert for at dette skal fungere (enkelt sitater hvis det ytre sitatet er dobbelt).

Du kan også sette inn et større antall datasett samtidig ved å bruke metoden Executemany (). I dette tilfellet bruker vi fortsatt “sett inn i kontaktverdier (?, ?, ?) ”Men vi legger til spørsmålstegn i parentesene, og etter et komma legger vi til listens navn.

Records = [('Martin', 'Crane', '444-475-5142'), ('Roz', 'Doyle', '123-965-4517')]
markør.ExecUtemany ("sett inn i kontaktverdier (?, ?, ?) ", poster)

Trinn 3: Sjekk og oppdater databasen

For å sjekke hva som er i databasen, kan vi spørre den. Igjen bruker vi Execute () -metoden, men med "Velg * fra kontakter", der kontakter er databasens navn. For å spørre om det, skriver vi følgende:

for rad i markør.Utfør ('Velg * fra kontakter'):
trykk (rad)

Når du for eksempel vil velge et spesifikt etternavn, bruker du "Where Last_name =" Crane "". Du vil skrive følgende kode (som bare velger de med etternavnet Crane):

for rad i markør.Utfør ('Velg * fra kontakter der last_name = "Crane"'):
trykk (rad)

Du kan også bruke og operatøren. Dette vil bare velge inngangen med Martins fornavn og etternavnet til Crane.

for rad i markør.Utfør ('velg * fra kontakter der last_name = "crane" og first_name = "martin"'):
trykk (rad)

Du kan også bruke OR -operatøren. I dette tilfellet vil alle kranene og alle månene som etternavn vises.

for rad i markør.Utfør ('velg * fra kontakter der last_name = "crane" eller last_name = "moon"'):
trykk (rad)

Alternativt kan du også bruke lignende kommando. Lignende kommando brukes når du vil finne noe med en lignende begynnelse eller slutt. For eksempel:

for rad i markør.Utfør ('Velg * fra kontakter der siste_navn som "CR%"'):
trykk (rad)

Her betyr "CR%" at det vil ta seg opp alt som begynner med CR og slutter med hva som helst.

Anta nå at du i stedet ønsket å oppdatere databasen (eller med andre ord endre den på en eller annen måte igjen). I mitt tilfelle, antar at Frasier Cranes telefonnummer har endret seg til 555-555-4758, og derfor må jeg oppdatere databasen med det nye nummeret sitt. For øyeblikket er nummeret hans satt til noe annet (EX: 638-475-7496).

I dette tilfellet bruker vi oppdateringen, settet og hvor kommandoer. I dette tilfellet brukes Set til å definere hva vi vil endre, og hvor brukes til å beskrive listen der du vil gjøre en endring. Så si at jeg ønsket å endre telefonnummeret til 555-555-458, og endre den for Frasier Crane (First_name = 'Frasier'), koden for å oppdatere en database er som følger:

markør.Utfør ("" "Oppdater kontakter Sett Telefon_nummer = '555-555-4758' Where First_name = 'Frasier'" "")

Trinn 4: Slette og slippe

Anta nå at du gjorde en feil av noe slag og ønsket å slette en post; Det er også mulig.

markør.Utfør ("Slett fra kontakter der First_name = 'Kaly'")

Syntaksen her er enkel, slett fra kontakter der fornavnet til personen er Kaly. Dette er flott til vi har flere kalys. Hva om vi hadde 10 Kaly? Da ville alle 10 bli slettet, og her ville Rowid være et bedre alternativ.

For å se radid for et individ, skriver vi følgende:

for rad i markør.Utfør ("Velg Rowid, * fra kontakter"):
trykk (rad)

For å slette det, kan vi bruke Rowid i stedet for første eller etternavn (som kan være vanlig).

markør.Utfør ("Slett fra kontakter der ROWID = 2")

Du kan også slette hele tabellen som helhet! Dette kalles å slippe bordet. Sistnevnte utføres ved hjelp av “drop tabell” -kommandoen og navnet på tabellen du vil slippe.

markør.Utfør ("Drop Table Contacts")

Konklusjon

SQLite brukes av de som bruker Python for å administrere små databaser. Husk at det bare kan håndtere små databaser og kan ikke brukes til enorme databaser! Koden som brukes til å opprette og administrere SQLite -databaser er enkel og enkel. I denne opplæringen lærte vi å bruke SQLite med Python; Faktisk lærte vi hvordan du oppretter en tabell, legger til poster, oppdaterer poster, sletter poster og sletter tabellen som helhet. Jeg tror ikke at kode eller teknikk kan være enklere enn med SQLite.

Glad koding!