Я пытаюсь передать запрос на доступ с помощью пакета RODBC в R. Я могу импортировать целые таблицы с помощью sqlFetch, но я ищу данные для сбора вишни с помощью запроса.sqlQuery с использованием переменной ограничения не работает.
Однако я хотел бы использовать переменную R для выбора одного из ограничений (Shaft_ID).
Чтобы построить SQL-запрос, я использовал и Cat и Paste, чтобы использовать кавычки вокруг переменной Shaft.
Мой код выглядит следующим образом:
Shaft<- "S001"
BL <- sqlQuery(myDBcon, paste("SELECT * FROM BL_FGSL WHERE Shaft_ID ='",Shaft,"'"), error = TRUE, as.is = TRUE)
Это создает кадр данных, но он не находит каких-либо значений. Если я заменю переменную напрямую на «S001», она будет работать!
Любые идеи?
Я не думаю, что вы должны использовать 'cat' там. Просто пропустите это. – Roland
'cat' используется только для побочного эффекта записи в STDOUT (или файл); он возвращает 'NULL', а не печатный текст -' is.null (cat (1: 5, "\ n")) '. – nrussell
Причина, по которой вы ничего не возвращаете, - это запрос, который ищет '' S001 ''(с пробелами с обеих сторон), потому что вы использовали' paste() 'без указания разделителя: либо используйте' paste (, sep = "") ' или 'paste0 ()' –
Parfait