如何在将数据框导出到 mssql 时指定目标数据库

Posted

技术标签:

【中文标题】如何在将数据框导出到 mssql 时指定目标数据库【英文标题】:How to specify a destination DB while exporting data frame to mssql 【发布时间】:2016-08-11 07:06:10 【问题描述】:

我想将一个数据框导出到 mssql 表。我使用了下面的代码,但我想设置目标,而不仅仅是服务器和表名。我在服务器中有几个数据库,我该如何保存其中之一的表?

df<-read.csv(file.choose(),header = T,sep= T)
DB= odbcConnect(dsn ='R_BISRV',uid = 'XXXX', pwd = 'XXX')
sqlSave(DB, df, tablename = 'Tanya', rownames = F,append = T)
close(DB)

【问题讨论】:

我使用 Rmysql 包。您在连接中指定数据库名称(或者最好在 my.cnf 文件中)。其他命令需要与 RODBC 中使用的命令稍作更改。 【参考方案1】:

我想通了: 数据库名称应在odbcDriverConnect() 中,表名称应在sqlSave()

channel <- odbcDriverConnect('driver=SQL Server;server=YYY;database=YY;port=1433;
uid=XX;pwd=XXX') 
# Client systems use TCP 1433 to connect to the database engine

sqlSave(channel = channel,dat = df, rownames = TRUE, tablename = "Tanya")

【讨论】:

以上是关于如何在将数据框导出到 mssql 时指定目标数据库的主要内容,如果未能解决你的问题,请参考以下文章

sqlmap从入门到精通-第四章-4-7 使用EW代理导出和导入MSSQL数据

如何将单个 MSSQL 表导出到 MySQL?

mssql 和mysql 数据自动同步程序

请问MSSQL数据库在导出时,所有ID字段的标识全部由“是”变成“否”了,该怎么解决?

通过 phpMyAdmin 将数据库转储导出到 MS SQL

oracle导出导入指定表