我在R中有一个通过conn
到RPostgreSQL
的活动数据库连接。命令isPostgresqlIdCurrent(conn)
和dbBegin(conn)
都返回TRUE
,我可以做一些简单的事情与它密谋。
但是,当我尝试dbSendQuery
时,会返回以下错误:
Error in postgresqlExecStatement(conn, statement, ...) :
RS-DBI driver: (could not run statement:
no connection to the server)
我知道这可能是DBI或ODBC问题,但是我已经使用凭据编辑了odbc.ini和odbcinst.ini文件,但仍然无法使用。我以为既然连接处于活动状态,那不是问题。
使用以下文件在文件ConnectDB.R
中建立连接:
library(RPostgreSQL)
connectDB <- function(conn) {
drv <- dbDriver('PostgreSQL')
db <- 'dbname'
host_db <- 'hostname'
db_port <- '5439'
db_user <- 'username'
db_password <- ""
conn <- dbConnect(drv, dbname=db, host=host_db, port=db_port, user=db_user, password=db_password)
return(conn)
}
其他操作在另一张纸上。
感谢您的帮助。