Golang PostgreSQL错误:“;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 (

我对Go和在PostgreSQL数据库上执行标准操作有问题

我首先开始使用GORM编码,在连接时收到以下错误消息:

拨号tcp:lookup tcp/fullstack_api:getaddrinfow:找不到指定的类

切换到标准的
“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:收到此(神秘)错误时,请始终重新验证您的每一条连接信息