为了账号安全,请及时绑定邮箱和手机立即绑定

返回的参数太多

返回的参数太多

Go
肥皂起泡泡 2023-04-24 17:05:28
我有这个 golang 文件:package mainimport (    "log"    "sync"    "github.com/jmoiron/sqlx")var db *sqlx.DBvar once sync.Once// GetDBConnection whateverfunc GetDBConnection() {    once.Do(func() {        db, err := sqlx.Connect("postgres", "user=tom dbname=jerry password=myPassword sslmode=disable")        if err != nil {            log.Fatalln(err)        }    })    return db   // <<< error here}我收到此错误:Too many arguments to return我只是想创建一个单例模式并返回数据库连接。我不确定从 sqlx.Connect 返回的内容是否是 sqlx.DB 类型,这可能是问题所在。有没有一种快速的方法来确定的返回类型sqlx.Connect()?
查看完整描述

1 回答

?
长风秋雁

TA贡献1757条经验 获得超7个赞

您已声明该函数GetDBConnection()不返回任何参数。

func GetDBConnection() {

你必须告诉 Go你打算返回的参数的类型:

func GetDBConnection() *sqlx.DB {

至于确定类型,我只是去看了源码。您还可以查看godoc.org 上的文档,它是从公开可用的 Go 包自动生成的。


查看完整回答
反对 回复 2023-04-24
  • 1 回答
  • 0 关注
  • 91 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信