为什么RODBC不会将数据帧上传到SQL Server?

前端之家收集整理的这篇文章主要介绍了为什么RODBC不会将数据帧上传到SQL Server?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
library(RODBC)
con <- odbcDriverConnect("driver=sql Server; server=name")
df <- data.frame(a=1:10,b=10:1,c=11:20)

尝试上传数据帧:

sqlSave(con,df,tablename='[MyDatabase].[MySchema].[MyTable]',rownames=F)

> sqlColumns(channel,tablename)出错:
‘MyDatabase.MySchema.MyTable’:在频道上找不到表格

..首先创建表,然后附加到表:

cmd <- "create table [MyDatabase].[MySchema].[MyTable] ([a]  int,[b] int,[c] int)"
sqlQuery(con,cmd)

sqlSave(con,rownames=F,append=T)

> sqlSave中的错误(con,tablename =“MyTable”,rownames = F,:
42S01 2714 [Microsoft] [ODBC sql Server驱动程序] [sql Server]数据库中已存在名为MyDatabase.MySchema.MyTable的对象.
[RODBC]错误:无法sqlExecDirect’CREATE TABLE MyDatabase.MySchema.MyTable(“a”int,“b”int,“c”int)’

我究竟做错了什么?

解决方法

如果我添加括号我也会收到错误.

如果我使用数据库的连接字符串来确保我在正确的数据库(不是主数据库)并执行语句sqlSave(con,tablename =’dbo.MyTable4′,rownames = F)或sqlSave(con,tablename =’MyTable5′,rownames = F)它的工作原理.

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

猜你在找的MsSQL相关文章