Bra*_*n S 0 database postgresql go
我的 postgres 在 Mac 本地运行,端口为 5432
它有test一个名为 的数据库,这个数据库中有一个名为test_table
我正在尝试使用 GO 连接到它。
进口:
"database/sql"
_ "github.com/lib/pq"
Run Code Online (Sandbox Code Playgroud)
主要的:
db, err := sql.Open("postgres", "postgres://user:@localhost:5432/test")
if err != nil {
log.Println(err)
}
defer db.Close()
if err2 := db.Ping(); err2 != nil {
fmt.Println("Failed to keep connection alive")
}
db.QueryRow("INSERT INTO test.test_table (name) VALUES (`something`)) RETURNING id").Scan(&id)
fmt.Println(id)
Run Code Online (Sandbox Code Playgroud)
为了测试连接,我正在运行 Ping 并尝试在 test_table 中插入一行。但它返回给我:
Failed to keep connection alive
0
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个问题?
在这种情况下,检查以下清单是值得的:
psql -U user -p 5432 -h localhost test吗?err2应打印,因为它包含有关正在发生的事情的关键信息。Scan还返回一个未保存到变量或打印的错误。如果是这样,您可能已经在查询中看到了语法问题。psql) 如果不是,请先修复查询,然后再继续。