Golang Sqlite

Golang Sqlite
SQLite è un motore di database SQL semplice, minimalista, altamente affidabile. È una scelta molto popolare ed efficiente per i test grazie alla sua semplicità e disponibilità.

In questo articolo, scoprirai come lavorare con SQLite nel linguaggio di programmazione Go. Questo tutorial utilizza un esempio molto semplice che lo rende adatto ai principianti.

Requisiti

Per seguire questo tutorial, avrai bisogno di quanto segue:

  1. Ultima versione del compilatore Go.
  2. Un editor di testo a tua scelta.
  3. Conoscenza di base di Go.

Una volta soddisfatti i requisiti, possiamo procedere.

Configurazione dell'ambiente

Il primo passo è creare un ambiente di test per creare un'applicazione GO. Inizia creando una directory usando il comando:

MKDIR SQLite-test

Quindi, navigare nella directory e inizializza usando il comando:

cd sqlite-test
go mod init sqlite-test

Una volta inizializzati i moduli, crea un file principale:

Toccare Main.andare

Successivamente, importa il pacchetto Go-Sqlite-3. Questo pacchetto ci consente di lavorare con i database SQLite utilizzando GO.

Aggiungi la seguente riga al tuo principale.Go File:

importa _ "github.com/mattn/go-sqlite3 "

Esegui il comando qui sotto per installare i pacchetti.:

vai a moder ordinato

In alternativa, è possibile eseguire il comando qui sotto per installare manualmente il pacchetto go-sqlite3:

Vai a prendere github.com/mattn/go-sqlite3

Crea file di database

Poiché SQLite è un database basato su file, dobbiamo creare un file di database per archiviare i dati. Possiamo farlo usando il sistema operativo.Crea () metodo.

Un esempio è come mostrato:

File, err: = OS.Crea ("Database.db ")
Se err != nil
tronco d'albero.Fatale (err)

file.Vicino()

Crea la funzione della tabella

Per aggiungere una tabella al database, possiamo aprire il file per la lettura e quindi aggiungere la tabella specificata. In questo esempio, creeremo una funzione che richiede comandi SQL grezzi per aggiungere una nuova tabella.

Un esempio è come mostrato:

func createtable (db *sql.Db)
utenti_table: = 'Crea utenti tabella (
ID intero non null Key Key Autoincrement,
Testo "FirstName",
Testo "LastName",
Testo "Dept",
"Stipendio" int); '
query, err: = db.Prepara (utenti_table)
Se err != nil
tronco d'albero.Fatale (err)

Domanda.Exec ()
fmt.Println ("tabella creata correttamente!")

Nell'esempio sopra, creiamo una funzione che prende una query SQL grezzi ed esegue rispetto al database specificato. Questo creerà una tabella di database in sqlite.

Inserire la funzione di registrazione

La parte successiva è quella di creare una funzione che ci consenta di inserire record nella tabella. Un codice di esempio è come mostrato:

Func Addusers (db *sql.Db, firstName String, LastName String, Dept String, Salary Int)
Registri: = 'insert in utenti (firstname, lastname, repart, stipendio) valori (?, ?, ?, ?) '
query, err: = db.Prepara (Records)
Se err != nil
tronco d'albero.Fatale (err)

_, err = query.Exec (FirstName, LastName, Dept, Stipendio)
Se err != nil
tronco d'albero.Fatale (err)

Funzione di record di recupero

La funzione finale che dobbiamo creare è quella che recupera i record memorizzati nel database, un esempio è come mostrato:

func fetchrecords (db *sql.Db)
Record, err: = db.Query ("seleziona * dagli utenti")
Se err != nil
tronco d'albero.Fatale (err)

record di rinvio.Vicino()
per record.Prossimo()
var id int
var firstname string
var lastname string
var dept string
VAR Stipendio int
documentazione.Scan (& Id, & FirstName, & LastName, & Dept, & Salary)
fmt.Printf ("Utente: %d %s %s %s %d", id, firstname, lastname, dipartimento, stipendio)

La funzione sopra utilizza l'iteratore del cursore per recuperare le righe dal database.

Eseguire query nel database

Una volta dichiarate le nostre funzioni, dobbiamo chiamarle per aggiungere i record nel database. Inizieremo aprendo il file del database. Successivamente, chiamiamo i metodi createTable () e Addusers ().

Il codice di esempio è come mostrato:

database, _: = sql.Open ("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", "sviluppatore front-end", 109000)
Defer database.Vicino()
// Record di recupero:
FetchRecords (database)

La sezione sopra apre il database per leggi e inserisce i record utilizzando il metodo Addusers ().

Compila e esegui

Per creare il programma, dovrai installare il compilatore GCC sul sistema. Ciò è richiesto dal pacchetto Go-Sqlite3. Controlla la risorsa di seguito per imparare come installare le dipendenze dal sistema.

https: // github.com/mattn/go-sqlite3

Ora puoi creare il codice come:

Vai a costruire principale.andare

Puoi eseguire il programma come:

./principale.exe

Il codice dovrebbe restituire i record archiviati nel database. Un output di esempio è come mostrato:

Conclusione

Questa guida discute come utilizzare il database SQLite nel Golang utilizzando il pacchetto Go-SQLite3. Controlla i documenti per saperne di più.