l1.go 743 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. package main
  2. import (
  3. "fmt"
  4. //"net/http"
  5. //"io"
  6. "database/sql"
  7. _ "github.com/mattn/go-sqlite3"
  8. )
  9. func main() {
  10. fmt.Printf("Your name? ")
  11. var username string
  12. fmt.Scan(&username)
  13. db, err := sql.Open("sqlite3", "./base.db")
  14. if err != nil {
  15. panic(err)
  16. }
  17. defer db.Close()
  18. sqlStmt := `CREATE TABLE IF NOT EXISTS users (id INTEGER NOT NULL PRIMARY KEY, name TEXT);`
  19. _, err = db.Exec(sqlStmt)
  20. if err != nil {
  21. panic(err)
  22. }
  23. _, err = db.Exec("INSERT INTO users(name) VALUES(?)", username)
  24. if err != nil {
  25. panic(err)
  26. }
  27. rows, err := db.Query("SELECT id, name FROM users")
  28. if err != nil {
  29. panic(err)
  30. }
  31. for rows.Next() {
  32. var id int
  33. var name string
  34. rows.Scan(&id, &name)
  35. fmt.Printf("Name %s, ID %d\n", name, id)
  36. }
  37. }