任何人都可以帮我解决这个错误吗?
panic: dial tcp: lookup tcp/5432,: getaddrinfow: The specified class was not found.
goroutine 1 [running]:
main.main()
C:/Dev/Digitalent/scalable-web-service-with-golang/go-sql/main.go:35 +0x23a
exit status 2
这是代码。
package main
import (
"database/sql"
"fmt"
_ "github.com/lib/pq"
)
const (
host = "localhost"
port = 5432
username = "postgres"
password = "*********"
dbName = "db-go-sql"
)
var (
db *sql.DB
err error
)
func main() {
psqlURL := fmt.Sprintf("host=%s port=%d, user=%s, password=%s "+
"dbname=%s sslmode=disable", host, port, username, password, dbName)
db, err = sql.Open("postgres", psqlURL)
if err != nil {
panic(err)
}
defer db.Close()
err = db.Ping()
if err != nil {
panic(err)
}
fmt.Println("Connection to postgresql established")
}
这是关于将我的 Go Lang 代码与 PostgreSQL 连接起来。我一遍又一遍地检查连接,例如主机、端口、用户名、密码和数据库名,我认为一切都很好。但是,当我运行主程序时,总是出现这个错误。我正在使用 Windows 11。谢谢!
psqlURL := fmt.Sprintf("host=%s port=%d, user=%s, password=%s "+
"dbname=%s sslmode=disable", host, port, username, password, dbName)
您确实有一个带有 url 字符串的
,
。删除它并尝试。
psqlURL := fmt.Sprintf("host=%s port=%d user=%s password=%s "+
"dbname=%s sslmode=disable", host, port, username, password, dbName)