I denne artikkelen vil du oppdage hvordan du jobber med SQLite i Go -programmeringsspråket. Denne opplæringen bruker et veldig enkelt eksempel som gjør det egnet for nybegynnere.
Krav
For å følge med denne opplæringen, trenger du følgende:
Når du har oppfylt kravene, kan vi fortsette.
Miljøoppsett
Det første trinnet er å lage et testmiljø for å bygge en GO -applikasjon. Begynn med å opprette en katalog ved hjelp av kommandoen:
mkdir sqlite-test
Deretter navigerer du inn i katalogen og initialiserer ved hjelp av kommandoen:
CD SQLite-test
gå mod init sqlite-test
Når du har initialisert modulene dine, oppretter du en GO -hovedfil:
berør Main.gå
Deretter importerer du Go-Sqlite-3-pakken. Denne pakken lar oss jobbe med SQLite -databaser ved hjelp av Go.
Legg til følgende linje i hoved.gå fil:
import _ "github.com/mattn/go-sqlite3 "
Kjør kommandoen nedenfor for å installere pakkene.:
gå mod ryddig
Alternativt kan du kjøre kommandoen nedenfor for å installere Go-SQLite3-pakken manuelt:
Gå GitHub.com/mattn/go-sqlite3
Opprett databasefil
Siden SQLite er en filbasert database, må vi opprette en databasefil for å lagre dataene. Vi kan gjøre dette ved hjelp av OS.Opprette () -metode.
Et eksempel er som vist:
Fil, feil: = OS.Opprett ("Database.db ")
Hvis feil != nil
Logg.Fatal (feil)
fil.Lukk()
Lag tabellfunksjon
For å legge til en tabell i databasen, kan vi åpne filen for lesing og deretter legge til den spesifiserte tabellen. I dette eksemplet vil vi lage en funksjon som tar rå SQL -kommandoer for å legge til en ny tabell.
Et eksempel er som vist:
func createTable (db *sql.Db)
brukere_table: = 'Opprett tabellbrukere (
id heltall ikke null primær nøkkel autoincrement,
"FirstName" -tekst,
"LastName" -tekst,
"Dept" tekst,
"Lønn" int); '
spørring, feil: = db.Forbered (brukere_table)
Hvis feil != nil
Logg.Fatal (feil)
spørsmål.Exec ()
fmt.Println ("Tabell opprettet med hell!")
I eksemplet over lager vi funksjon som tar en rå SQL -spørring og utfører mot den spesifiserte databasen. Dette vil opprette en databasetabell i SQLite.
Sett inn postfunksjonen
Neste del er å bygge en funksjon som lar oss sette inn poster i tabellen. Et eksempelkode er som vist:
func addusere (db *sql.DB, FirstName String, LastName String, Dept String, Salary int)
poster: = 'sett inn i brukere (FirstName, LastName, Dept, Lønn) verdier (?, ?, ?, ?) '
spørring, feil: = db.Forbered (poster)
Hvis feil != nil
Logg.Fatal (feil)
_, err = spørring.Exec (FirstName, LastName, avd., Lønn)
Hvis feil != nil
Logg.Fatal (feil)
Hente poster funksjon
Den endelige funksjonen vi trenger å lage er en som henter postene som er lagret i databasen, et eksempel er som vist:
Func FetchRecords (DB *SQL.Db)
RECORD, ERR: = DB.Spørring ("Velg * fra brukere")
Hvis feil != nil
Logg.Fatal (feil)
utsett rekord.Lukk()
for rekord.Neste ()
var id int
var FirstName String
var etternavn streng
var avd. Streng
var lønn int
ta opp.Scan (& Id, & FirstName, & LastName, & Dept, & Lønn)
fmt.Printf ("Bruker: %d %s %s %s %d", id, første navn, etternavn, avd., Lønn)
Funksjonen ovenfor bruker markørens iterator for å hente radene fra databasen.
Utfør spørsmål om databasen
Når vi har erklært funksjonene våre, må vi ringe dem for å legge postene i databasen. Vi starter med å åpne databasefilen. Deretter kaller vi CreateTable () og AddUsers () -metodene.
Eksempelkode er som vist:
Database, _: = SQL.Åpne ("Sqlite3", "Databsase.db ")
CreateTable (database)
Addusers (Database, "Ankita", "Maudie", "Game Developer", 140000)
Addusers (Database, "Emiliana", "Alfiya", "Bakend Developer", 120000)
Addusers (Database, "Emmet", "Brian", "DevOps Developer", 110000)
Addusers (Database, "Reidun", "Jorge", "Dtabase Developer", 140000)
Addusers (Database, "Tyrone", "Silvia", "Front-end Developer", 109000)
utsett database.Lukk()
// hente poster:
FetchRecords (database)
Avsnittet over åpner databasen for å lese og sette inn postene ved hjelp av AddUsers () -metoden.
Kompilere og løpe
For å bygge programmet, må du installere GCC -kompilatoren på systemet ditt. Dette kreves av Go-Sqlite3-pakken. Sjekk ressursen nedenfor for å lære hvordan du installerer avhengighetene av systemet ditt.
https: // github.com/mattn/go-sqlite3
Du kan nå bygge koden som:
Gå Bygg Main.gå
Du kan kjøre programmet som:
./hoved.EXE
Koden skal returnere postene som er lagret i databasen. Et eksempelutgang er som vist:
Konklusjon
Denne guiden diskuterer hvordan du bruker SQLite-databasen i Golang ved hjelp av Go-SQLite3-pakken. Sjekk dokumentene for å lære mer.