sqlite - skynocover/Wiki-for-GoLang GitHub Wiki

sqlite

參考 https://johnpili.com/golang-sqlite-simple-example/

εŸΊζœ¬ζ“δ½œ

file, err := os.Create("sqlite-database.db") // Create SQLite file
if err != nil {
	log.Fatal(err.Error())
}
file.Close()

sqliteDatabase, _ := sql.Open("sqlite3", "./sqlite-database.db") // Open the created SQLite File
defer sqliteDatabase.Close()                                     // Defer Closing the database

createStudentTableSQL := `CREATE TABLE student (
	"idStudent" integer NOT NULL PRIMARY KEY AUTOINCREMENT,		
	"code" TEXT,
	"name" TEXT,
	"program" TEXT		
  );` // SQL Statement for Create Table
insertStudentSQL := `INSERT INTO student(code, name, program) VALUES (?, ?, ?)`

statement, err := db.Prepare(createStudentTableSQL) // Prepare SQL Statement
if err != nil {
	log.Fatal(err.Error())
}
statement.Exec() // Execute SQL Statements


row, err := db.Query("SELECT * FROM student ORDER BY name")
defer row.Close()
for row.Next() { // Iterate and fetch the records from result cursor
	var id int
	var code string
	var name string
	var program string
	row.Scan(&id, &code, &name, &program)
	log.Println("Student: ", code, " ", name, " ", program)
}