【发布时间】:2019-09-09 04:10:29
【问题描述】:
我正在尝试将数据从 r 插入 SQL Server 表。我必须读取数百个 csv 格式的文件,我一次在 r 中读取它们,处理它们然后将它们写入 sql(一个表,这就是我必须插入行的原因)
我正在使用 DBI 和 odbc 包。我正在使用 dbCreateTable 创建空表并使用 dbAppendTable 插入数据。
空表中的列数与我尝试插入的数据相同
library(DBI)
library(odbc)
con <- dbConnect(odbc(), Driver = "SQL Server", Server = "myserver",
Database = "mydb", trustedconnection = TRUE)
t <- read_csv("myfile.csv") %>% select(1,4:7,9:20 )
dbRemoveTable(con, "NEW_SQL_TABLE")
dbCreateTable(conn = con, "NEW_SQL_TABLE", t)
dbAppendTable(conn = con, "NEW_SQL_TABLE", t)
t2 <- dbReadTable(con,"NEW_SQL_TABLE")
我希望 t2 包含与 t 相同的记录,但 t2 有 0
当我运行 dbAppendTable 时,控制台中有一个 0,我不确定。
> dbAppendTable(conn = con, "NEW_SQL_TABLE", t)
[1] 0
【问题讨论】:
-
我最终使用了 dbWriteTable,显然 dbAppendTable 不起作用。如果有答案,仍然在这里留下问题