在RStudio中正确执行的脚本在SQL Server 2016 Management Studio中出现错误。环境详细信息如下。
RStudio
platform: x86_64-w64-mingw32
arch: x86_64
os: mingw32
system: x86_64, mingw32
status:
major: 3
minor: 4.3
year: 2017
month: 11
day: 30
svn rev: 73796
language: R
version.string: R version 3.4.3 (2017-11-30)
nickname: Kite-Eating Tree
SSMS
Product: Microsoft SQL Server Enterprise (64-bit)
Operating System: Microsoft Windows NT 6.3 (9600)
Platform: NT x64
Version: 13.0.5216.0
这是我尝试执行的代码。
EXECUTE sp_execute_external_script
@language = N'R',
@script = N'
library(RODBC)
library(jsonlite)
library(purrr)
library(tidyr)
library(dplyr)
library(lubridate)
connectionString <- odbcConnect(dsn="KMhivehttp")
goldInstrumentApps <- sqlQuery(connectionString, "select CAST(instrumentapps_event.event AS varchar(8000)) AS event,
instrumentapps_event.load_ts,
instrumentapps_event.data_dt from dmfwk_gold.instrumentapps_event")
goldInstrumentDF <- data.frame(goldInstrumentApps)
formattedDF <- transform(goldInstrumentDF, instrumentapps_event.load_ts =
ymd_hms(as.character(goldInstrumentDF$instrumentapps_event.load_ts)))
'
以下是我正在处理的数据的一些信息:
str(goldInstrumentDF)
这将返回:
来自外部脚本的STDOUT消息:'data.frame':411个观察点。共3 变量:$事件:具有408级的因子 “ {\” time \“:\” 2018-11-12T14:45:01.133Z \“,\” application \“:\” com_ldo_suchma_loma_cw_prod-salesorderreturnsservice_1.1.6 \“,\” verb \“:” | 被截断,..:1 18 27 29 28 22 22 8 16 17 24 ... $ load_ts:因子w / 42级“ 2018/11/13 19:20:58”,..:1 1 1 1 1 1 1 1 1 1 ... $ data_dt: 具有33个级别的因子“ HIVE_DEFAULT_PARTITION ”,..:2 3 3 3 3 3 3 3 3 3 ...
这是导致错误的代码:
formattedDF <- transform(goldInstrumentDF, instrumentapps_event.load_ts =
ymd_hms(as.character(goldInstrumentDF$instrumentapps_event.load_ts)))
这是错误:
data.frame(list(event = c(1L,18L,27L,29L,28L,22L,8L, 16L ,:参数表示不同的行数:411,0调用: 源... transform-> transform.data.frame-> do.call-> data.frame
ScaleR中的错误。检查输出以获取更多信息。错误中 eval(expr,envir,enclos):ScaleR中的错误。检查输出是否 更多信息。调用:来源-> withVisible->评估->评估-> .Call执行中止警告消息:关闭未使用的RODBC句柄1
我在做什么错了?