我正在尝试在R中执行SQL Server存储过程。应该在R代码的其余部分中使用SQL Server过程的结果。通常,SQL Server过程的结果是一些保存在指定文件夹中的CSV文件。
在R代码中,我想要:
或
为了连接到SQL Server并执行存储过程,我编写了以下代码:
library(RODBC)
querystring <- paste("DECLARE @return_value int,",
"@Status int ",
"exec @return_value = pEDC_RunStandalone @SourceDB =
mySourceDB,",
"@PortInfoID = 'ALL',",
"@DestFileFolder = mySpecifiedDestinationPath,",
"@ConvertEQAsEQFire = 1,",
"@Status = @Status OUTPUT ",
"SELECT 'Return Value' = @return_value",
sep ="")
conn<- odbcDriverConnect('driver={SQL Server Native Client 11.0};server=myServer;database=myDatabaseName;trusted_connection=no;uid=myUID;pwd=myPassword')
data <- sqlQuery(conn,querystring, errors=FALSE)
odbcCloseAll()
代码不使用ERROR或WARNINGS。所以,我认为它可以连接到服务器没有问题,它应该能够运行存储过程。但是,不会生成CSV文件!
我在sql查询文件中复制/粘贴查询字符串并在SQL Server Management Studio中运行它,它可以工作并生成CSV结果文件。
知道问题是什么以及如何解决?
很抱歉,我不能制作任何比我上面提供的代码更多的代码!