R Экспорт набора записей SQLiteResult в Excel или CSV. - PullRequest
0 голосов
/ 05 ноября 2019

Я использую пакет RSQLite для успешной записи данных в локальную базу данных SQLite.

Я хочу иметь возможность экспортировать результаты запроса select в Excel. Проблема в том, что класс результирующего набора записей:

>class(rs)
[1] "SQLiteResult"
attr(,"package")
[1] "RSQLite"

, и я не могу экспортировать его в Excel. Сообщение об ошибке, использующее стандартные методы:

Error in as.data.frame.default(x[[i]], optional = TRUE) : 
cannot coerce class ‘structure("SQLiteResult", package = "RSQLite")’ to a 
data.frame

Я пробовал различные поиски в Google и прочитал документацию по RSQLite & SQLite.

Пример кода, который приводит к ошибке 'coerce':

library(RSQLite)
con <- dbConnect(RSQLite::SQLite(), ":memory:")
dbWriteTable(con, "mtcars", mtcars)
res <- dbSendQuery(con, "SELECT * FROM mtcars WHERE cyl = 4")
dbFetch(res)
write.csv(res, file = "C:/test.csv")
dbClearResult(res)
dbDisconnect(con)

Документация Sqlite предоставляет только способ экспорта с использованием командной строки или SQLiteStudio. Я хочу добиться этого в своем коде R.

Документ пакета RSQLite предлагает использовать, например:

dbReadTable(con, "mtcars", row.names = FALSE)

Это приводит к ошибке при замене строки dbSendQuery на нее:

Warning message: Expired, result set already closed 

Пожалуйста, кто-нибудь может указать, что мне не хватает?

Спасибо!

...