使用dbplyr将URL路径插入数据库

时间:2017-10-31 18:58:00

标签: r postgresql dbplyr

我正在尝试使用

将url插入postgresql数据库
db_insert_into(con, "url", "http://www.google.com")

文件错误(fn,open =“r”):无法打开连接 另外:警告信息: 在文件中(fn,open =“r”): 无法打开文件'http:/www.google.com':没有此类文件或目录

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

您需要以某种方式指定表名和字段名。我猜测"url"是字段名称,表名尚未定义。但坦率地说,无所谓,采取解决方案并根据需要进行调整。

db_insert_into的期望是values(第三个参数)是data.frame或者可以轻易转换为此类的东西。所以你可能会这样做:

newdata <- data.frame(url = "http://www.google.com", stringsAsFactors = FALSE)
db_insert_into(con, "tablename", newdata)

如果你懒惰或打码打高尔夫,你可以用:

db_insert_into(con, "tablename", list(url = "http://google.com"))

因为dbplyr周围的某些基础S3或S4方法有时会检查if (!is.data.frame(values)) values <- as.data.frame(values)。 (但我不一定要依赖它,通常更明确一点。)