Golang PostgreSQL错误:“;getaddrinfow:找不到指定的类;
我对Go和在PostgreSQL数据库上执行标准操作有问题 我首先开始使用GORM编码,在连接时收到以下错误消息: 拨号tcp:lookup tcp/fullstack_api:getaddrinfow:找不到指定的类 切换到标准的Golang PostgreSQL错误:“;getaddrinfow:找不到指定的类;,postgresql,go,Postgresql,Go,我对Go和在PostgreSQL数据库上执行标准操作有问题 我首先开始使用GORM编码,在连接时收到以下错误消息: 拨号tcp:lookup tcp/fullstack_api:getaddrinfow:找不到指定的类 切换到标准的“database/sql”包后,连接不再抛出此错误。然而,现在我在尝试对连接的数据库执行任何查询时遇到了这个错误,我假设GORM最初是这样做的 以下代码在我的系统上导致此错误: // Connect initiates a DB connection. func (
“database/sql”
包后,连接不再抛出此错误。然而,现在我在尝试对连接的数据库执行任何查询时遇到了这个错误,我假设GORM最初是这样做的
以下代码在我的系统上导致此错误:
// Connect initiates a DB connection.
func (dbConn *PostgresConnection) Connect() error {
handle, connErr := sql.Open("postgres", dbConn.getConnectionString())
if connErr != nil { // Does NOT cause an error
return connErr
}
if pingErr := handle.Ping(); pingErr != nil { // Causes the above error
return pingErr
}
dbConn.handle = handle
return nil
}
我已经检查了PostgreSQL服务是否正在运行,数据库是否存在。在写这个问题时,我再次检查了连接字符串/env变量 我意识到前一天我有一个愚蠢的复制/粘贴错误,我没有验证: 连接字符串:
host=127.0.0.1端口=5432端口=new\u数据库用户=db\u用户密码=XXXXXX
如您所见,还有一个额外的端口
变量,它应该是dbname
。解决此问题后,一切正常
连接字符串:host=127.0.0.1端口=5432 dbname=new\u数据库用户=db\u用户密码=XXXXXX
TLDR:收到此(神秘)错误时,请始终重新验证您的每一条连接信息