Sql server RODBC错误:无法SQLExecDirect';创建表格。。。执行sqlSave时

Sql server RODBC错误:无法SQLExecDirect';创建表格。。。执行sqlSave时,sql-server,r,azure,freetds,rodbc,Sql Server,R,Azure,Freetds,Rodbc,下面是一个简短的故事,重要的是要讨论设置,我正在使用RODBC和FreeTDS连接到SQLAzure数据库。请记住,这是SQL Azure数据库(内部部署SQL Server也有问题,提醒我将其发布到此处以寻求帮助或了解真正的问题)。 首先,如果没有集群密钥或密钥,它就不能很好地处理数据库,因此需要做的是addPK=T或更长的版本addPK=TRUE 解决方案#1。两步法 这将有助于创建正确的表结构,但是仍然会使您失败。别担心。现在我们需要做的是附加数据 sqlSave(ch, USArrest

下面是一个简短的故事,重要的是要讨论设置,我正在使用RODBC和FreeTDS连接到SQLAzure数据库。请记住,这是SQL Azure数据库(内部部署SQL Server也有问题,提醒我将其发布到此处以寻求帮助或了解真正的问题)。 首先,如果没有集群密钥或密钥,它就不能很好地处理数据库,因此需要做的是addPK=T或更长的版本addPK=TRUE

解决方案#1。两步法

这将有助于创建正确的表结构,但是仍然会使您失败。别担心。现在我们需要做的是附加数据

sqlSave(ch, USArrests, addPK = T)
sqlSave(ch, USArrests, tablename = ‘USArrests’, append = T)
它会告诉您错误,然后您接下来需要做的是附加数据

sqlSave(ch, USArrests, addPK = T)
sqlSave(ch, USArrests, tablename = ‘USArrests’, append = T)
现在你准备好欢呼了吗

解决方案#2

那不是我,我很懒,应该一个命令就能完成

这个解决方案似乎没有意义,这里是更好的版本

sqlSave(ch, cust, tablename=”dbo.customers”, safer=F, addPK=T)
Safer=F起作用。不确定这是FreeTDS还是RODBC sqlSave函数的错误


最后,我找到了答案,答案可能很明显-使用这是一个问题吗?如果你想回答你自己的问题,你应该发布一个问题,然后是一个答案;不是链接博客文章的副本。谢谢你指出,亚历克斯。这实际上是一个问题。这篇博文不是一个真正的解决方案,我不知道真正的问题是什么。。要澄清的是,为什么sqlSave在第一次保存数据时失败了,但实际创建了表?然后,后续的附加实际上起作用了吗?