Connessione a SQLite con Swift e macOS

Mattepuffo's logo
Connessione a SQLite con Swift e macOS

Connessione a SQLite con Swift e macOS

In questo articolo vediamo come connettere un progetto Swift per macOS a SQLite.

Per eseguire la connessione al db useremo la libreria SQLite.swift.

Io ho le versione 13 di Xcode; per installare la libreria nel progetto ho fatto così:

  • cliccate su File -> Add Packages
  • nella finestra che si apre, nella casella in alto a destra, inserite l'url riportato nella documentazione: https://github.com/stephencelis/SQLite.swift.git
  • vi comparirà la libreria; a questo cliccate su Add

Per quanto riguarda il db, ha una tabella utenti con tre campi:

  • id -> PK e AI
  • email -> di tipo text e chiave univoca
  • data_aggiunta -> di tipo text

A questo punto vediamo il codice:

import Foundation
import SQLite

let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy/MM/dd"

let email = "b@b.it"

do {
    let db = try Connection("/Users/matte/Public/test.db")
    
    let stmt = try db.prepare("INSERT INTO utenti (email, data_aggiunta) VALUES (?,?)")
    try stmt.run(email, dateFormatter.string(from: Date()))
    
    print(db.totalChanges)
    print(db.changes)
    print(db.lastInsertRowid)
    
    for row in try db.prepare("SELECT id, email, data_aggiunta FROM utenti") {
        print("id: \(String(describing: row[0])), email: \(String(describing: row[1]))")
    }
    
    let stmtDelete = try db.prepare("DELETE FROM utenti WHERE email = ?")
    try stmtDelete.run(email)
    
    print(db.totalChanges)
    print(db.changes)
    
} catch {
    print(error)
}

Eseguiamo queste operazioni:

  • un inserimento
  • vediamo quanti recods sono stati "modificati" (in senso generico)
  • vediamo l'ultimo id aggiunto
  • eseguiamo una select
  • facciamo la cancellazione del record inserito
  • rivediamo i risultati della cancellazione

Enjoy!


Condividi

1 Commenti

  • franco

    grazie!! ottima guida super dettagliata!

    11/03/2022

Commentami!