【发布时间】:2023-04-09 08:12:01
【问题描述】:
我正在尝试使用 RJDBC 在 R 中进行批量插入。它似乎一次插入 1 行,这需要很长时间。
我想知道是否有人知道 R 中的解决方案可以将数据从 R 批量插入 SQL。我知道 RODBC 可以进行参数化插入,速度快但不如批量插入快。
【问题讨论】:
标签: sql sql-server r jdbc odbc
我正在尝试使用 RJDBC 在 R 中进行批量插入。它似乎一次插入 1 行,这需要很长时间。
我想知道是否有人知道 R 中的解决方案可以将数据从 R 批量插入 SQL。我知道 RODBC 可以进行参数化插入,速度快但不如批量插入快。
【问题讨论】:
标签: sql sql-server r jdbc odbc
我不知道你的“R”语言,但在 sqlExe 中有一个 BULK sql 语句可用。
sqlExe 是一个通过 ODBC 连接到 SQL 数据库的实用程序,它将执行任何有效的 SQL,此外它还有一些附加功能 (http://sourceforge.net/projects/sqlexe/)
例如,假设目标表是:
table: [mydata]
-------------------
row_id char(1)
row_idx integer
row_desc char(32)
要使用 sqlExe 执行插入任务,您需要准备一个包含输入的文件:
input.dat
a,1,this is row 1
b,2,this is row 2
c,3,this is row 3
d,4,this is row 4
要导入的命令行:
sql --dsn MYDB -e "BULK INSERT input.dat, INSERT INTO mydata(row_id,row_idx,row_desc) VALUES(?,?,?)"
【讨论】: