GORP を使用して mySQL データベースから SELECT を実行しようとしています。「reflect.Value.Interface: エクスポートされていないフィールドまたはメソッドから取得した値を返すことはできません」というエラーが表示されます。 DB接続を確認しました。たとえば、Select (*) count は正しいカウントを示します。失敗することがわかります
dbmap.Select(&dd, "SELECT * FROM kd_dropdowns")
上記の行がないと、プログラムはエラーをスローしません。
これが私のコードです。
package main
import (
"database/sql"
"fmt"
"log"
"net/http"
"github.com/coopernurse/gorp"
_ "github.com/go-sql-driver/mysql"
"github.com/gorilla/mux"
)
func main() {
fmt.Println("reached main")
// Create a MUX
r := mux.NewRouter()
//manegala patti
r.HandleFunc("/manegalu", manegalaTorisu).Methods("GET")
http.ListenAndServe(":8080", r)
}
func manegalaTorisu(w http.ResponseWriter, r *http.Request) {
type Dropdowns struct {
dd_id int64 `db:"dd_id"`
identifier int64 `db:"identifier"`
name string `db:"name"`
active string `db:"active"`
}
db, err := sql.Open("mysql", "krishna:xxxx@/kd")
defer db.Close()
var dbmap *gorp.DbMap
// construct a gorp DbMap
dbmap = &gorp.DbMap{Db: db, Dialect: gorp.MySQLDialect{}}
var dd []Dropdowns
_, err = dbmap.Select(&dd, "SELECT * FROM kd_dropdowns")
checkErr(err, "Select failed")
fmt.Fprint(w, "Success")
}
func checkErr(err error, msg string) {
if err != nil {
log.Fatalln(msg, err)
}
}