下面的查询执行方法在 DB 中发出完全相同的(3 个)查询,这很好且易于理解 -见下文。但是,我想知道的是,就 Go 而言,两者在内存、cpu、缓存、连接使用等方面是否存在真正的区别?
查询
2020-02-22T12:29:23.858393Z 41 Prepare SELECT id, uuid, name FROM users WHERE id = ?
2020-02-22T12:29:23.859601Z 41 Execute SELECT id, uuid, name FROM users WHERE id = 1
2020-02-22T12:29:23.861607Z 41 Close stmt
方法
func Select1(query string, args ...interface{}) (*sql.Row, error) {
stmt, err := DB.Prepare(query)
if err != nil {
return nil, err
}
defer stmt.Close()
return stmt.QueryRow(args...), nil
}
func Select2(query string, args ...interface{}) *sql.Row {
return DB.QueryRow(query, args...)
}
蓝山帝景
MMTTMM
相关分类