sql-server - 在 R 中执行 SQL Server 存储过程

标签 sql-server r stored-procedures

我在 R 中执行 SQL Server 2008 存储过程时遇到问题。R 中的执行如下:

<小时/>
library(RODBC)

dbhandle <- odbcDriverConnect('driver={SQLServer};server=xxx;database=xxx;trusted_connection=true') 

data <-sqlquery(dbhandle, "EXEC ihshsf35.FPR_GET_PF10  @tipo_pes='F' , @date_process='2016-11-30'") 

odbcCloseAll() 
<小时/>

R中出现的错误:

Error in as.POSIXlt.character(x, tz, ...) : 
 character string is not in a standard unambiguous format
<小时/>

存储过程调用特征和日期来从数据库中提取信息:

Procedure [ihshsf35].[FPR_GET_PF10] 
( 
        @tipo_pes varchar(1), 
        @date_process as datetime 
) 
AS 
BEGIN 
<小时/>

我从 SAS 和 SPSS 等其他系统执行此存储过程没有问题,但当我在 R 中尝试时却出现错误。 注意:在 SQL Server 中,数据的格式为“aaaa-mm-dd”,与我在 R 中询问的格式相同

谁能帮我解决 R 中的问题吗?

提前致谢

最佳答案

最后,我知道问题是什么以及如何解决。需要将参数as.is=T与函数sqlExecute一起使用:

data <- sqlExecute(dbhandle, "exec FPR_GET_PJ  @tipo_pes='J', @date_process='2016-12-31'", 
                   fetch = TRUE, as.is=T)

关于sql-server - 在 R 中执行 SQL Server 存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41522309/

相关文章:

sql - 使用 SQL 将 pdf 文件插入 SQL 表

r - dbplyr 目前是否假定 redshift 连接实际上是 postgres 连接?

php - PDO BindParam 捷径?

sql - 存储过程中的 IF/ELSE 性能

sql - 如何转义字符串以与 SQL Server 中的 LIKE 运算符一起使用?

sql-server - 查找sql​​ server中所有varchar()字段?

sql-server - 您建议使用什么用户帐户在开发环境中运行 SQL Server Express 2008 服务?

R:考虑标点符号做分词

r - 1-1000 中的 x 和 1-1000 中的 y 使用 R 的 x^y 有多少独特的幂

mysql - 声明变量MySQL触发器