Я проверил код для sqlQuery
и нашел это:
stat <- odbcQuery(channel, query, rows_at_time)
if (stat == -1L) {
if (errors)
return(odbcGetErrMsg(channel))
else return(invisible(stat))
}
error
является параметром sqlQuery
, по умолчанию TRUE
, поэтому он дает вам вектор символов без ошибок или предупреждений. Если вы измените его на sqlQuery(ch,"SELECT Test from tblTest",FALSE)
, тогда df
будет содержать значение -1
. Это код ошибки из C-уровня, но не ошибка в R, означающая, что tryCatch
не смог обработать его.
Полагаю, вам нужно проверить, если df==-1
после tryCatch
.