我想创建一个接受sql连接的类,然后我可以编写方法来从我的数据库中返回数据。
func main() {
db := dbConnect()
defer db.Close()
// pass the db to my dbservice.go somehow?
}
然后在我的处理程序(对于Web应用程序)中,我希望能够:
var userKey, err := dbService.getUserKey(123)
我只是创建一个像dbservice.go这样的文件,然后创建表示我的返回值的结构,然后执行:
func (mystruct *MyStruct) GetUserKey(id int64) (key string, err error) {
//
}
另外,如何在我的main中将db传递给它,以便它可以使用数据库连接?
答案 0 :(得分:0)
让服务有一个内部字段,该字段指向数据库并使用它。
type DBService struct {
db *sql.DB
}
func (dbs *DBService) GetUserKey(id int64) (key string, err error)
dbs.db.Query("SOMETHING")
return
}
func NewService(db *sql.DB) *DBService { return &DBService{db: db} }