gpt4 book ai didi

postgresql - 如何在 golang 中返回 DB(数据库/sql)类型?

转载 作者:IT王子 更新时间:2023-10-29 01:01:14 24 4
gpt4 key购买 nike

我使用 Go 和 PostgreSQL 使用 github.com/lib/pq .

我想在其他函数中调用此 opendb() 函数,但返回值有问题。

 package database

import (
"fmt"
"database/sql"
_ "github.com/lib/pq"
)

const (
host = "localhost"
port = 5432
user = "postgres"
password = "pgpassword"
dbname = "postgres"
)

func opendb() (*DB) {
psqlInfo := fmt.Sprintf("host=%s port=%d user=%s password=%s dbname=%s " +
"sslmode=disable", host, port, user, password, dbname)

db, err := sql.Open("postgres", psqlInfo)

if err != nil {
panic(err)
}

defer db.Close()

return db
}

如果你运行这个:

$ go run main.go

它会显示这个错误:

error:

undefined: DB

最佳答案

返回的数据类型应该是*sql.DB
改变
func opendb() (*数据库) {

func opendb() (*sql.DB) {

应该可以

关于postgresql - 如何在 golang 中返回 DB(数据库/sql)类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51251076/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com