【问题标题】:Batch / Bulk insert in RR中的批量/批量插入
【发布时间】:2023-04-09 08:12:01
【问题描述】:

我正在尝试使用 RJDBC 在 R 中进行批量插入。它似乎一次插入 1 行,这需要很长时间。

我想知道是否有人知道 R 中的解决方案可以将数据从 R 批量插入 SQL。我知道 RODBC 可以进行参数化插入,速度快但不如批量插入快。

【问题讨论】:

    标签: sql sql-server r jdbc odbc


    【解决方案1】:

    我不知道你的“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(?,?,?)"
    

    【讨论】:

      猜你喜欢
      • 2011-02-15
      • 1970-01-01
      • 2012-02-16
      • 1970-01-01
      • 2015-05-17
      • 1970-01-01
      • 2020-10-24
      • 2015-03-31
      • 2012-05-10
      相关资源
      最近更新 更多