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!
swift xcode sqlite macos database
1 Commenti
grazie!! ottima guida super dettagliata!
11/03/2022