在一个应用程序中,我有一个全局范围的var db *sql.DB后来被称为slcstrSource, slcint64Timestamp, slcstrContent, err := DB_functions.GetContent(db) if err != nil { fmt.Println("Error: " + err.Error()) }GetContent 是这样的:func GetContent(db *sql.DB) ([]string, []int64, []string, error) { var slcstrContent []string var slcint64Timestamp []int64 var slcstrSource []string // Run the query rows, err := db.Query("SELECT source, timestamp, content FROM MyDatabase.MyTable") if err != nil { return slcstrSource, slcint64Timestamp, slcstrContent, err } defer rows.Close() for rows.Next() { // Holding variables for the content in the columns var source, content string var timestamp int64 // Get the results of the query err := rows.Scan(&source, ×tamp, &content) if err != nil { return slcstrSource, slcint64Timestamp, slcstrContent, err } // Append them into the slices that will eventually be returned to the caller slcstrSource = append(slcstrSource, source) slcstrContent = append(slcstrContent, content) slcint64Timestamp = append(slcint64Timestamp, timestamp) } return slcstrSource, slcint64Timestamp, slcstrContent, nil}当我运行应用程序并命中这些代码部分时,我得到:Error: mssql: Invalid object name 'MyDatabase.MyTable'.当我 db.Ping() 数据库时,它似乎工作。从我缩小范围来看,错误发生在查询中,但我找不到问题所在。我检查了数据库,有一个名为 MyDatabase 的数据库,其中有一个名为 MyTable 的表,该表在这三列中有信息......在进行查询之前或进行查询时,我是否遗漏了什么?
1 回答
- 1 回答
- 0 关注
- 249 浏览
添加回答
举报
0/150
提交
取消