【发布时间】:2020-12-15 16:40:45
【问题描述】:
我正在尝试创建一个传递 Id 的 get 函数。
我有一个名为“Salary”的列,我将其定义为 DECIMAL (13,2)
在 Go 中,我尝试在 int、int68、big.Rat 的 struct 中定义此属性,但是当我进行扫描时,我收到:
2019/07/13 00:05:25 sql:列索引 6 上的扫描错误,名称为“Salary”: 不支持扫描,将 driver.Value 类型 []uint8 存储到 *big.Rat 类型中
我的get函数:
func (app *App) getFuncionary(w http.ResponseWriter, r *http.Request) {
vars := mux.Vars(r)
Id, ok := vars["Id"]
if !ok {
log.Println("No one id found")
}
dbdata := &Funcionary{}
err := app.Database.QueryRow("SELECT Id,Data,xx,xxy,xxxx,xxxxx,Salario,xxxxxx FROM `funcionarys` WHERE Id = ?", Id).Scan(&dbdata.Id, &dbdata.Data, &xx, &xxy, &xxxx, &dbdata.xxxxx, &dbdata.Salario, &dbdata.xxxxxx)
if err != nil {
log.Fatal(err)
}
log.Println("You fetched a thing!")
w.WriteHeader(http.StatusOK)
if err := json.NewEncoder(w).Encode(dbdata); err != nil {
panic(err)
}
}
我的数据库连接字符串没有解析时间:
connectionString := fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8mb4&collation=utf8mb4_unicode_ci&multiStatements=true", user, password, serverName, dbName)
【问题讨论】:
标签: go