當我嘗試將資料解析為結構,然後將其附加到切片中時,什麼也不會得到。但是如果我在 MySQL Workbench 中使用查詢,我會得到一些值......
query, err := db.Query("SELECT 'description','is_done' FROM tasks WHERE 'user_id' = ?;", userId) if err != nil { return nil, err } defer query.Close() var tasks []TodoUserDTO var currentTask TodoUserDTO for query.Next() { err = query.Scan(¤tTask.Description, ¤tTask.IsDone) if err != nil { panic(err) } tasks = append(tasks, currentTask) }
TodoDTO架構如下圖所示:
type TodoUserDTO struct { Description string `json:"desc"` IsDone bool `json:"done"` }
根據程式碼,您似乎在查詢的 SELECT 語句中使用了錯誤的列名稱。 SELECT 語句應包含任務表中列的實際列名,而不是列名的文字字串。
嘗試將 SELECT 語句更改為:
「選擇描述,is_done FROM 任務 WHERE user_id = ?」