使用带有R的odbc库将SQL Server插入单个值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用带有R的odbc库将SQL Server插入单个值相关的知识,希望对你有一定的参考价值。

我想用R使用odbc库在SQL表上插入一个值

为此,我创建了连接,当它完成后,我尝试使用以下命令在其上插入数据:

odbc::dbSendQuery(con,"INSERT INTO Datos_Moldeo (Referencia) VALUES ('UNASjkjkjk');")

但是这回到了我的结果:

<OdbcResult>
  SQL  INSERT INTO Datos_Moldeo (Referencia) VALUES ('UNASjkjkjk');
  ROWS Fetched: 0 [complete]
       Changed: 1
Warning message:
In new_result(connection@ptr, statement) : Cancelling previous query

发生了什么?我做错了什么?

谢谢大家

答案

dbSendQuery是特定于驱动程序的。在某些情况下,它可能有效,但不建议用于更新/插入。

或者,您可以使用dbExecute方法。

dbExecute(con,
  "INSERT INTO Datos_Moldeo (Referencia) VALUES ('UNASjkjkjk');")
另一答案

dbSendQuery函数仅是选择查询。您需要使用dbWriteTabledbSendStatement写入它。

以上是关于使用带有R的odbc库将SQL Server插入单个值的主要内容,如果未能解决你的问题,请参考以下文章