使用database / sql从golang中的mysql中检索记录

时间:2015-06-11 07:45:37

标签: mysql database go

我试图从mysql表中检索记录并将其编组为json。 但我得到的错误是:"。\ main.go:67:左边的没有新的变量:=" 我是Golang Plz的新人!帮我解决这个错误! 我的代码是:

MY_ENUM_INFO

和主要路线:

func GetUser(w http.ResponseWriter, r *http.Request) {

  urlParams   := mux.Vars(r)
  id       := urlParams["id"]
  ReadUser := User{}
  con, err := sql.Open("mysql", "root:YES@/social_network?charset=utf8")

  err := con.QueryRow("select * from users where user_id=?",id).Scan(&ReadUser.ID, &ReadUser.Name, &ReadUser.First, &ReadUser.Last, &ReadUser.Email )
  switch {
      case err == sql.ErrNoRows:
              fmt.Fprintf(w,"No such user")
      case err != nil:
              log.Fatal(err)
      default:
        output, _ := json.Marshal(ReadUser)
        fmt.Fprintf(w,string(output))
  }
}

这是我的新代码,但再次无法从数据库表中获取记录,PLZ帮我弄清楚错误或我做错了什么? 包主要

func main() {

  gorillaRoute := mux.NewRouter()
  gorillaRoute.HandleFunc("/api/user/create", CreateUser)
  gorillaRoute.HandleFunc("/api/user/read/:id", GetUser)
  http.Handle("/", gorillaRoute)
  http.ListenAndServe(":8080", nil)
}

1 个答案:

答案 0 :(得分:2)

在为现有变量指定新值时,从:移除冒号err :=