通过R sqlSave更新SQL表

前端之家收集整理的这篇文章主要介绍了通过R sqlSave更新SQL表前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在R中有一个有3列的数据框,使用sqlSave我可以轻松地在sql数据库中创建一个表:
channel <- odbcConnect("JWPMICOMP")
sqlSave(channel,dbdata,tablename = "ManagerNav",rownames = FALSE,append = TRUE,varTypes = c(DateNav = "datetime"))
odbcClose(channel)

此数据框包含有关管理器(名称,导航和日期)的信息,这些信息每天都会使用当前日期的新值进行更新,如果出现错误,也可能会更新旧值.

我怎样才能在R中完成这项任务?

我喜欢使用sqlUpdate,但它返回以下错误

> sqlUpdate(channel,tablename = "ManagerNav")
Error in sqlUpdate(channel,tablename = "ManagerNav") : 
  cannot update ‘ManagerNav’ without unique column

解决方法

当你创建一个表“white shark-way”(参见文档)时,它不会获得主索引,而只是普通的列,而且通常是错误的类型.通常,我使用您的方法获取名称,但之后您应该进入数据库并分配主索引,正确的列宽和类型.

之后,sqlUpdate()可能会起作用;我说可能,因为我放弃了使用sqlUpdate(),有太多警告,并使用sqlQuery(…,paste(“Update ….)))来实现真正的工作.

原文链接:https://www.f2er.com/mssql/75103.html

猜你在找的MsSQL相关文章