RODBC错误:SqlSave无法追加到表

RODBC错误:SqlSave无法追加到表,r,rodbc,R,Rodbc,我们使用RODBC和SqlSave命令遇到了一个错误。当我们试图保存到Sybase数据库的数据很小(~小于10.000行)时,同一个SqlSave命令会起作用,因此我们有点困惑该怎么办。当试图保存较大的数据(约200.000行)时,保存过程会毫无问题地启动,但在保存几千行后会崩溃。然后我们点击此错误消息“无法附加到表…” 我们使用这种代码: library(RODBC) channel <- odbcConnect("linfo-test", uid="DBA", pwd="xxxxxx

我们使用RODBC和SqlSave命令遇到了一个错误。当我们试图保存到Sybase数据库的数据很小(~小于10.000行)时,同一个SqlSave命令会起作用,因此我们有点困惑该怎么办。当试图保存较大的数据(约200.000行)时,保存过程会毫无问题地启动,但在保存几千行后会崩溃。然后我们点击此错误消息“无法附加到表…”

我们使用这种代码:

library(RODBC)

channel <- odbcConnect("linfo-test", uid="DBA", pwd="xxxxxx", believeNRows=FALSE)

sqlSave(channel=channel, dat=matkat, tablename = "testitaulu", append = TRUE)

odbcClose(channel)
库(RODBC)

频道
sqlSave
append=TRUE
几乎不起作用。您必须显式地将SQL INSERT写入语句,这是不幸的。为这个坏消息感到抱歉

sqlSave
with
append=TRUE
几乎不起作用。您必须显式地将SQL INSERT写入语句,这是不幸的。为这个坏消息感到抱歉

sqlSave正在工作,但您必须非常小心。 你需要记住:

  • 在R中,数据框和sql server表的列名必须精确匹配,并且记住R是区分大小写的,甚至前导空格或末尾的空格也会产生影响
  • 确保R和sql表中的数据类型匹配
  • 您没有缺少任何要插入的列(即使是sql中的默认列)
  • 连接必须正确设置,如果sql用户没有读写目标表(在sqlSave中使用)的权限,它也可能失败

    • sqlSave正在工作,但您必须非常小心。 你需要记住:

      • 在R中,数据框和sql server表的列名必须精确匹配,并且记住R是区分大小写的,甚至前导空格或末尾的空格也会产生影响
      • 确保R和sql表中的数据类型匹配
      • 您没有缺少任何要插入的列(即使是sql中的默认列)
      • 连接必须正确设置,如果sql用户没有读写目标表(在sqlSave中使用)的权限,它也可能失败

      这确实是个坏消息,但谢谢你告诉我!我只花了30分钟时间,没有让
      sqlSave
      append=TRUE
      在最琐碎的情况下工作,很高兴知道不只是我一个人。这确实是个坏消息,但谢谢你告诉我!我只花了30分钟时间,没有让
      sqlSave
      append=TRUE
      在即使是最琐碎的情况下也能工作,很高兴知道不只是我一个人。
      RODBC
      是一个可怕的包,你最好改用RStudio设计的
      odbc
      包。有了thts,您可以使用append=T使用
      dbWriteTable()
      了。这对我来说是一个可怕的包
      RODBC
      ,您最好改用RStudio设计的
      odbc
      包。有了thts,您可以将
      dbWriteTable()
      与append=T一起使用。这对我很有用