我正在尝试从PostgreSQL数据库表中查询一行。
func getPrefix(serverID int64, db *sql.DB) string {
var prefix string
err := db.QueryRow("SELECT prefix FROM servers WHERE serverid = 1234").Scan(&prefix)
if err != nil {
fmt.Println(err.Error())
}
spew.Dump(prefix)
fmt.Println("Prefix is " + prefix)
return prefix
}
显然,变量prefix
是一个空字符串,但是当我在数据库中查询它时,它并不为空
You are now connected to database "mewbot" as user "postgres".
mewbot=# select * from servers;
serverid | prefix
----------+--------
1234 | ;
(1 row)
mewbot=#
我的问题是,为什么在应为;
时返回空字符串
所有检查;我确保我已连接到相同的数据库等
答案 0 :(得分:0)
显然它不起作用,因为服务器上禁用了SSL模式,但是我尝试在未指定禁用的情况下进行连接。
将postgres://postgres:7890@localhost:5432/mewbot
更改为postgres://postgres:7890@localhost:5432/mewbot?sslmode=disable
解决了我的问题。