【发布时间】:2017-08-02 07:11:21
【问题描述】:
我有这个有效的代码:
db, err := sql.Open("mysql", "pwd@tcp(ip:port)/db")
if err != nil {
panic(err.Error())
}
rows, err := db.Query("select username from users")
if err != nil {
panic(err.Error())
}
var (
username string
)
for rows.Next() {
err = rows.Scan(
&name,
)
if err != nil {
panic(err)
}
fmt.Println(username)
}
但是,……可以替代吗
var (
username string
)
和 错误 = 行。扫描( &姓名, )
使用结构?
我问这个是因为每次我想添加新字段时都需要
- 在查询中添加字段
- 在“var”块中创建新变量
- 添加要扫描的变量
我可以在一个地方定义一个结构并更新字段吗?或者,......是否有一些最佳实践来构建查询并获取它们?
【问题讨论】:
-
不应该是
rows.Scan()中的&username吗? -
我为此提交了编辑。结果我今天做了 2k 代表,所以我现在可以直接编辑它,但这实际上会在列表中颠簸它,所以它不会有生产力。
标签: go