Я пытаюсь прочитать таблицу из базы данных и получить ошибку: Ошибка в.valueClassTest(ans, "character", "dbListFields"): недопустимое значение из общей функции 'dbListFields, class "numeric", ожидаемый "символ"
Вот мой код:
library(RMySQL)
library(dbConnect)
mydb = dbConnect(MySQL(), user='user',
password='pwd', dbname='blank_copy',
host='IPaddress', port=portnumber)
dbListTables(mydb)
dbListFields(mydb, 'SELECT * FROM tablename')
Я не знаю, почему возникает такая ошибка класса для этой конкретной таблицы.
Может ли кто-нибудь помочь мне в этой ошибке?
Спасибо вам.
Вам необходимо передать имя таблицы в качестве второго аргумента для dbListFields
в документации.
Поэтому вы должны сделать что-то вроде этого:
library(RMySQL)
library(dbConnect)
mydb = dbConnect(MySQL(), user='user',
password='pwd', dbname='blank_copy',
host='IPaddress', port=portnumber)
tables <- dbListTables(mydb)
#tables is a character vector, so you can just pass a subset of that
fields <- dbListFields(mydb, tables[1])