使用循环将数据从R插入MySQL时出现问题

zazmityj  于 2023-02-26  发布在  Mysql
关注(0)|答案(1)|浏览(224)

下午好,感谢阅读。我目前不得不手动将数据输入SQL,并尝试使用R中的循环自动化数据,但当输入查询并在MySQL中查看信息时,我没有看到任何新的观察结果。
基本上,这就是输入我正在使用的观察结果的代码(使用我从数据框中循环出来的其他数据):

library(dplyr)
library(odbc)
library(DBI)
library(RMySQL)

connection <- dbConnect(RMySQL::MySQL(),
                        dbname = "xxx",
                        host=  "xxx",
                        port = xxx,
                        user = "xxx",
                        password = "xxx")

payout_history <- paste0("INSERT INTO `payout_history` (`uuid`, `trip_id`, `delivery_order_id`, `amount`, `payout_type_id`, `payout_invoice_id`) VALUES (uuid(), '",id,"', '",order_id,"', '",amount,"', '7', '",head(payout_invoice$id,1),"');")
    
dbExecute(connection,payout_history)

当我尝试在MySQL管理器中使用它时,查询可以工作,但在R控制台中使用dbExecute()函数时,它没有添加任何内容,您知道我是否应该使用任何其他函数来插入观察结果吗?

ryevplcw

ryevplcw1#

我还没有仔细检查SQL语句的语法是否正确,假设这不是问题所在,那么您是否尝试过使用dbSendQuery()?
我已经完成了你想做的事

result <- dbSendQuery(connection, payout_history)
dbClearResult(result)

有一点需要注意,我使用连接到MySQL服务器

connection <- dbConnect(RMariaDB::MariaDB(), ...

相关问题