如何使用go lang从mysql中获取多列

我正在尝试使用go语言在 mysql 数据库中获取多列。目前我可以修改这个脚本,它可以很好地只获取一列,并使用 http 打印功能打印它。但是,当它获取两件事时,脚本不再起作用。我不知道我需要做什么来修复它。我知道 sql 很好,因为我已经在 mysql 终端中测试过了,它给了我想要的预期结果。


 conn, err := sql.Open("mysql", "user:password@tcp(localhost:3306)/database")

 statement, err := conn.Prepare("select first,second from table") 

 rows, err := statement.Query()

 for rows.Next() {

         var first string

         rows.Scan(&first)

         var second string

         rows.Scan(&second)

         fmt.Fprintf(w, "Title of first is :"+first+"The second is"+second)

 }

 conn.Close()


倚天杖
浏览 182回答 1
1回答

沧海一幻觉

您使用了错误的变量名称,但我认为这只是示例代码中的“错字”。那么正确的语法是:var first, second stringrows.Scan(&first, &second)看看这个是什么Scan(dest ...interface{})意思以及如何使用它。您还应该处理而不是忽略错误。最后,您应该按预期使用Fprintf:fmt.Fprintf(w, "Title of first is : %s\nThe second is: %s", first, second)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go